openapi: 3.0.0
paths:
  /api/routes/quoteAll:
    post:
      operationId: RouterController_getQuoteAll
      summary: Get all available quotes
      description: >-
        Using this endpoint, you can get a preview of all possible routes for a
        cross-chain or on-chain swaps. The router goes through all supported
        DEXes, bridges, and aggregators to find and return all available routes.
        All routes are sorted by expected swap output, allowing you to easily
        compare different options and select the most suitable route before
        executing the swap.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuoteRequestDto'
            examples:
              01-ethereum.native-polygon.native:
                summary: ETH.NATIVE to POLYGON.NATIVE
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: POLYGON
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '1.05'
                  srcTokenBlockchain: ETH
              02-ethereum.usdt-polygon.usdt:
                summary: ETH.USDT to POLYGON.USDT
                value:
                  dstTokenAddress: '0xc2132d05d31c914a87c6611c10748aeb04b58e8f'
                  dstTokenBlockchain: POLYGON
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              03-ethereum.usdt-bnb.usdt:
                summary: ETH.USDT to BNB.USDT
                value:
                  dstTokenAddress: '0x55d398326f99059ff775485246999027b3197955'
                  dstTokenBlockchain: BSC
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              04-ethereum.usdt-ethereum.native:
                summary: ETH.USDT to ETH.ETH
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              05-solana.usdt-ethereum.usdt:
                summary: SOL.USDT to ETH.USDT
                value:
                  dstTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  srcTokenAmount: '50'
                  srcTokenBlockchain: SOLANA
              06-ethereum.usdt-solana.usdt:
                summary: ETH.USDT to SOL.USDT
                value:
                  dstTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  dstTokenBlockchain: SOLANA
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              07-solana.usdt-solana.usdc:
                summary: SOL.USDT to SOL.USDC
                value:
                  dstTokenAddress: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
                  dstTokenBlockchain: SOLANA
                  referrer: rubic.exchange
                  srcTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  srcTokenAmount: '50'
                  srcTokenBlockchain: SOLANA
              08-ethereum.usdc-tron.usdc:
                summary: ETH.USDC to TRON.USDC
                value:
                  dstTokenAddress: TEkxiTehnzSmSe2XqrBj4w32RUN966rdz8
                  dstTokenBlockchain: TRON
                  referrer: rubic.exchange
                  srcTokenAddress: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              09-ton.usdt-ton.native:
                summary: TON.USDT to TON.TON
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: TON
                  referrer: rubic.exchange
                  srcTokenAddress: EQCxE6mUtQJKFnGfaROTKOt1lZbDiiX1kCixRv7Nw2Id_sDs
                  srcTokenAmount: '10'
                  srcTokenBlockchain: TON
              10-bitcoin.native-merlin.native:
                summary: BTC.BITCOIN to MERLIN.BTC
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: MERLIN
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '0.01'
                  srcTokenBlockchain: BITCOIN
              11-bitcoin.native-ethereum.wbtc:
                summary: BTC.BITCOIN to ETH.WBTC
                value:
                  dstTokenAddress: '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '0.01'
                  srcTokenBlockchain: BITCOIN
              12-sui.native-sui.usdc:
                summary: SUI.SUI to SUI.USDC
                value:
                  dstTokenAddress: >-
                    0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC
                  dstTokenBlockchain: SUI
                  referrer: rubic.exchange
                  srcTokenAddress: >-
                    0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI
                  srcTokenAmount: '10'
                  srcTokenBlockchain: SUI
              13-ethereum.native-sui.native:
                summary: ETH.NATIVE to SUI.SUI
                value:
                  dstTokenAddress: >-
                    0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI
                  dstTokenBlockchain: SUI
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '10'
                  srcTokenBlockchain: ETH
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuoteAllDto'
      tags:
        - Router
  /api/routes/quoteBest:
    post:
      operationId: RouterController_getQuoteBest
      summary: Get best quote
      description: >-
        Using this endpoint, you can get the best available route for a
        cross-chain or on-chain swap. The router goes through all supported
        DEXes, bridges, and aggregators to find and return the route with the
        highest expected swap output.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuoteRequestDto'
            examples:
              01-ethereum.native-polygon.native:
                summary: ETH.NATIVE to POLYGON.NATIVE
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: POLYGON
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '1.05'
                  srcTokenBlockchain: ETH
              02-ethereum.usdt-polygon.usdt:
                summary: ETH.USDT to POLYGON.USDT
                value:
                  dstTokenAddress: '0xc2132d05d31c914a87c6611c10748aeb04b58e8f'
                  dstTokenBlockchain: POLYGON
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              03-ethereum.usdt-bnb.usdt:
                summary: ETH.USDT to BNB.USDT
                value:
                  dstTokenAddress: '0x55d398326f99059ff775485246999027b3197955'
                  dstTokenBlockchain: BSC
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              04-ethereum.usdt-ethereum.native:
                summary: ETH.USDT to ETH.ETH
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              05-solana.usdt-ethereum.usdt:
                summary: SOL.USDT to ETH.USDT
                value:
                  dstTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  srcTokenAmount: '50'
                  srcTokenBlockchain: SOLANA
              06-ethereum.usdt-solana.usdt:
                summary: ETH.USDT to SOL.USDT
                value:
                  dstTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  dstTokenBlockchain: SOLANA
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              07-solana.usdt-solana.usdc:
                summary: SOL.USDT to SOL.USDC
                value:
                  dstTokenAddress: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
                  dstTokenBlockchain: SOLANA
                  referrer: rubic.exchange
                  srcTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  srcTokenAmount: '50'
                  srcTokenBlockchain: SOLANA
              08-ethereum.usdc-tron.usdc:
                summary: ETH.USDC to TRON.USDC
                value:
                  dstTokenAddress: TEkxiTehnzSmSe2XqrBj4w32RUN966rdz8
                  dstTokenBlockchain: TRON
                  referrer: rubic.exchange
                  srcTokenAddress: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              09-ton.usdt-ton.native:
                summary: TON.USDT to TON.TON
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: TON
                  referrer: rubic.exchange
                  srcTokenAddress: EQCxE6mUtQJKFnGfaROTKOt1lZbDiiX1kCixRv7Nw2Id_sDs
                  srcTokenAmount: '10'
                  srcTokenBlockchain: TON
              10-bitcoin.native-merlin.native:
                summary: BTC.BITCOIN to MERLIN.BTC
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: MERLIN
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '0.01'
                  srcTokenBlockchain: BITCOIN
              11-bitcoin.native-ethereum.wbtc:
                summary: BTC.BITCOIN to ETH.WBTC
                value:
                  dstTokenAddress: '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '0.01'
                  srcTokenBlockchain: BITCOIN
              12-sui.native-sui.usdc:
                summary: SUI.SUI to SUI.USDC
                value:
                  dstTokenAddress: >-
                    0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC
                  dstTokenBlockchain: SUI
                  referrer: rubic.exchange
                  srcTokenAddress: >-
                    0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI
                  srcTokenAmount: '10'
                  srcTokenBlockchain: SUI
              13-ethereum.native-sui.native:
                summary: ETH.NATIVE to SUI.SUI
                value:
                  dstTokenAddress: >-
                    0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI
                  dstTokenBlockchain: SUI
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '10'
                  srcTokenBlockchain: ETH
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuoteResponseDto'
      tags:
        - Router
  /api/routes/quoteDepositTrades:
    post:
      operationId: RouterController_getQuoteDepositTrades
      summary: Get all available quotes via deposit
      description: >-
        Using this endpoint, you can get a preview of all possible deposit
        routes for a cross-chain swap. The router goes through all supported
        deposit-based bridges and providers to find and return all available
        deposit trades.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuoteDepositRequestDto'
            examples:
              01-ethereum.native-polygon.native:
                summary: ETH.NATIVE to POLYGON.NATIVE
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: POLYGON
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '1.05'
                  srcTokenBlockchain: ETH
              02-ethereum.usdt-polygon.usdt:
                summary: ETH.USDT to POLYGON.USDT
                value:
                  dstTokenAddress: '0xc2132d05d31c914a87c6611c10748aeb04b58e8f'
                  dstTokenBlockchain: POLYGON
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              03-ethereum.usdt-bnb.usdt:
                summary: ETH.USDT to BNB.USDT
                value:
                  dstTokenAddress: '0x55d398326f99059ff775485246999027b3197955'
                  dstTokenBlockchain: BSC
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              04-ethereum.usdt-ethereum.native:
                summary: ETH.USDT to ETH.ETH
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              05-solana.usdt-ethereum.usdt:
                summary: SOL.USDT to ETH.USDT
                value:
                  dstTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  srcTokenAmount: '50'
                  srcTokenBlockchain: SOLANA
              06-ethereum.usdt-solana.usdt:
                summary: ETH.USDT to SOL.USDT
                value:
                  dstTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  dstTokenBlockchain: SOLANA
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              07-solana.usdt-solana.usdc:
                summary: SOL.USDT to SOL.USDC
                value:
                  dstTokenAddress: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
                  dstTokenBlockchain: SOLANA
                  referrer: rubic.exchange
                  srcTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  srcTokenAmount: '50'
                  srcTokenBlockchain: SOLANA
              08-ethereum.usdc-tron.usdc:
                summary: ETH.USDC to TRON.USDC
                value:
                  dstTokenAddress: TEkxiTehnzSmSe2XqrBj4w32RUN966rdz8
                  dstTokenBlockchain: TRON
                  referrer: rubic.exchange
                  srcTokenAddress: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
              09-ton.usdt-ton.native:
                summary: TON.USDT to TON.TON
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: TON
                  referrer: rubic.exchange
                  srcTokenAddress: EQCxE6mUtQJKFnGfaROTKOt1lZbDiiX1kCixRv7Nw2Id_sDs
                  srcTokenAmount: '10'
                  srcTokenBlockchain: TON
              10-bitcoin.native-merlin.native:
                summary: BTC.BITCOIN to MERLIN.BTC
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: MERLIN
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '0.01'
                  srcTokenBlockchain: BITCOIN
              11-bitcoin.native-ethereum.wbtc:
                summary: BTC.BITCOIN to ETH.WBTC
                value:
                  dstTokenAddress: '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '0.01'
                  srcTokenBlockchain: BITCOIN
              12-sui.native-sui.usdc:
                summary: SUI.SUI to SUI.USDC
                value:
                  dstTokenAddress: >-
                    0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC
                  dstTokenBlockchain: SUI
                  referrer: rubic.exchange
                  srcTokenAddress: >-
                    0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI
                  srcTokenAmount: '10'
                  srcTokenBlockchain: SUI
              13-ethereum.native-sui.native:
                summary: ETH.NATIVE to SUI.SUI
                value:
                  dstTokenAddress: >-
                    0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI
                  dstTokenBlockchain: SUI
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '10'
                  srcTokenBlockchain: ETH
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuoteAllDto'
      tags:
        - Router
  /api/routes/swap:
    post:
      operationId: RouterController_getSwap
      summary: Get swap data
      description: >-
        Using this endpoint, you can get the transaction data required to
        execute a swap. The data is generated based on the route selected in the
        previous step and can be used to send the swap transaction from the
        user’s wallet.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SwapRequestDto'
            examples:
              01-ethereum.native-polygon.native:
                summary: ETH.NATIVE to POLYGON.NATIVE
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: POLYGON
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '1.05'
                  srcTokenBlockchain: ETH
                  fromAddress: string
                  id: string
              02-ethereum.usdt-polygon.usdt:
                summary: ETH.USDT to POLYGON.USDT
                value:
                  dstTokenAddress: '0xc2132d05d31c914a87c6611c10748aeb04b58e8f'
                  dstTokenBlockchain: POLYGON
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  fromAddress: string
                  id: string
              03-ethereum.usdt-bnb.usdt:
                summary: ETH.USDT to BNB.USDT
                value:
                  dstTokenAddress: '0x55d398326f99059ff775485246999027b3197955'
                  dstTokenBlockchain: BSC
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  fromAddress: string
                  id: string
              04-ethereum.usdt-ethereum.native:
                summary: ETH.USDT to ETH.ETH
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  fromAddress: string
                  id: string
              05-solana.usdt-ethereum.usdt:
                summary: SOL.USDT to ETH.USDT
                value:
                  dstTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  srcTokenAmount: '50'
                  srcTokenBlockchain: SOLANA
                  fromAddress: string
                  id: string
              06-ethereum.usdt-solana.usdt:
                summary: ETH.USDT to SOL.USDT
                value:
                  dstTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  dstTokenBlockchain: SOLANA
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  fromAddress: string
                  id: string
              07-solana.usdt-solana.usdc:
                summary: SOL.USDT to SOL.USDC
                value:
                  dstTokenAddress: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
                  dstTokenBlockchain: SOLANA
                  referrer: rubic.exchange
                  srcTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  srcTokenAmount: '50'
                  srcTokenBlockchain: SOLANA
                  fromAddress: string
                  id: string
              08-ethereum.usdc-tron.usdc:
                summary: ETH.USDC to TRON.USDC
                value:
                  dstTokenAddress: TEkxiTehnzSmSe2XqrBj4w32RUN966rdz8
                  dstTokenBlockchain: TRON
                  referrer: rubic.exchange
                  srcTokenAddress: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  fromAddress: string
                  id: string
              09-ton.usdt-ton.native:
                summary: TON.USDT to TON.TON
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: TON
                  referrer: rubic.exchange
                  srcTokenAddress: EQCxE6mUtQJKFnGfaROTKOt1lZbDiiX1kCixRv7Nw2Id_sDs
                  srcTokenAmount: '10'
                  srcTokenBlockchain: TON
                  fromAddress: string
                  id: string
              10-bitcoin.native-merlin.native:
                summary: BTC.BITCOIN to MERLIN.BTC
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: MERLIN
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '0.01'
                  srcTokenBlockchain: BITCOIN
                  fromAddress: string
                  id: string
              11-bitcoin.native-ethereum.wbtc:
                summary: BTC.BITCOIN to ETH.WBTC
                value:
                  dstTokenAddress: '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '0.01'
                  srcTokenBlockchain: BITCOIN
                  fromAddress: string
                  id: string
              12-sui.native-sui.usdc:
                summary: SUI.SUI to SUI.USDC
                value:
                  dstTokenAddress: >-
                    0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC
                  dstTokenBlockchain: SUI
                  referrer: rubic.exchange
                  srcTokenAddress: >-
                    0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI
                  srcTokenAmount: '10'
                  srcTokenBlockchain: SUI
                  fromAddress: string
                  id: string
              13-ethereum.native-sui.native:
                summary: ETH.NATIVE to SUI.SUI
                value:
                  dstTokenAddress: >-
                    0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI
                  dstTokenBlockchain: SUI
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '10'
                  srcTokenBlockchain: ETH
                  fromAddress: string
                  id: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SwapResponseDto'
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SwapResponseDto'
      tags:
        - Router
  /api/routes/swapDepositTrade:
    post:
      operationId: RouterController_getSwapDepositTrade
      summary: Get swap data via deposit
      description: >-
        Using this endpoint, you can get the deposit data required to perform a
        manual transfer to a selected deposit-based provider. The response
        includes the depositAddress, amountToSend, exchangeId, and optional
        extraFields, which can be used to manually send funds from the wallet.
        This data is generated based on the route selected in the previous step
        and is intended for providers that require a direct deposit instead of
        an on-chain swap transaction.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SwapDepositRequestDto'
            examples:
              01-ethereum.native-polygon.native:
                summary: ETH.NATIVE to POLYGON.NATIVE
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: POLYGON
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '1.05'
                  srcTokenBlockchain: ETH
                  id: string
                  receiver: '0x1b3cB81E51011b549d78bf720b0d924ac763A7C2'
              02-ethereum.usdt-polygon.usdt:
                summary: ETH.USDT to POLYGON.USDT
                value:
                  dstTokenAddress: '0xc2132d05d31c914a87c6611c10748aeb04b58e8f'
                  dstTokenBlockchain: POLYGON
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  id: string
                  receiver: '0x1b3cB81E51011b549d78bf720b0d924ac763A7C2'
              03-ethereum.usdt-bnb.usdt:
                summary: ETH.USDT to BNB.USDT
                value:
                  dstTokenAddress: '0x55d398326f99059ff775485246999027b3197955'
                  dstTokenBlockchain: BSC
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  id: string
                  receiver: '0x1b3cB81E51011b549d78bf720b0d924ac763A7C2'
              04-ethereum.usdt-ethereum.native:
                summary: ETH.USDT to ETH.ETH
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  id: string
                  receiver: '0x1b3cB81E51011b549d78bf720b0d924ac763A7C2'
              05-solana.usdt-ethereum.usdt:
                summary: SOL.USDT to ETH.USDT
                value:
                  dstTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  srcTokenAmount: '50'
                  srcTokenBlockchain: SOLANA
                  id: string
                  receiver: '0x1b3cB81E51011b549d78bf720b0d924ac763A7C2'
              06-ethereum.usdt-solana.usdt:
                summary: ETH.USDT to SOL.USDT
                value:
                  dstTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  dstTokenBlockchain: SOLANA
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  id: string
                  receiver: '0x1b3cB81E51011b549d78bf720b0d924ac763A7C2'
              07-solana.usdt-solana.usdc:
                summary: SOL.USDT to SOL.USDC
                value:
                  dstTokenAddress: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
                  dstTokenBlockchain: SOLANA
                  referrer: rubic.exchange
                  srcTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  srcTokenAmount: '50'
                  srcTokenBlockchain: SOLANA
                  id: string
                  receiver: '0x1b3cB81E51011b549d78bf720b0d924ac763A7C2'
              08-ethereum.usdc-tron.usdc:
                summary: ETH.USDC to TRON.USDC
                value:
                  dstTokenAddress: TEkxiTehnzSmSe2XqrBj4w32RUN966rdz8
                  dstTokenBlockchain: TRON
                  referrer: rubic.exchange
                  srcTokenAddress: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  id: string
                  receiver: '0x1b3cB81E51011b549d78bf720b0d924ac763A7C2'
              09-ton.usdt-ton.native:
                summary: TON.USDT to TON.TON
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: TON
                  referrer: rubic.exchange
                  srcTokenAddress: EQCxE6mUtQJKFnGfaROTKOt1lZbDiiX1kCixRv7Nw2Id_sDs
                  srcTokenAmount: '10'
                  srcTokenBlockchain: TON
                  id: string
                  receiver: '0x1b3cB81E51011b549d78bf720b0d924ac763A7C2'
              10-bitcoin.native-merlin.native:
                summary: BTC.BITCOIN to MERLIN.BTC
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: MERLIN
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '0.01'
                  srcTokenBlockchain: BITCOIN
                  id: string
                  receiver: '0x1b3cB81E51011b549d78bf720b0d924ac763A7C2'
              11-bitcoin.native-ethereum.wbtc:
                summary: BTC.BITCOIN to ETH.WBTC
                value:
                  dstTokenAddress: '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '0.01'
                  srcTokenBlockchain: BITCOIN
                  id: string
                  receiver: '0x1b3cB81E51011b549d78bf720b0d924ac763A7C2'
              12-sui.native-sui.usdc:
                summary: SUI.SUI to SUI.USDC
                value:
                  dstTokenAddress: >-
                    0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC
                  dstTokenBlockchain: SUI
                  referrer: rubic.exchange
                  srcTokenAddress: >-
                    0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI
                  srcTokenAmount: '10'
                  srcTokenBlockchain: SUI
                  id: string
                  receiver: '0x1b3cB81E51011b549d78bf720b0d924ac763A7C2'
              13-ethereum.native-sui.native:
                summary: ETH.NATIVE to SUI.SUI
                value:
                  dstTokenAddress: >-
                    0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI
                  dstTokenBlockchain: SUI
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '10'
                  srcTokenBlockchain: ETH
                  id: string
                  receiver: '0x1b3cB81E51011b549d78bf720b0d924ac763A7C2'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SwapResponseDto'
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SwapResponseDto'
      tags:
        - Router
  /api/routes/swapBest:
    post:
      operationId: RouterController_getSwapBest
      summary: Get swap data for the best quote
      description: >-
        Using this endpoint, you can get the transaction data for executing the
        best available swap route. The router automatically selects the route
        with the highest expected swap output and returns the corresponding
        transaction data, ready to be sent from the user’s wallet.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SwapRequestDto'
            examples:
              01-ethereum.native-polygon.native:
                summary: ETH.NATIVE to POLYGON.NATIVE
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: POLYGON
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '1.05'
                  srcTokenBlockchain: ETH
                  enableChecks: true
                  enableTestnets: false
                  foreignBlacklist:
                    lifi: []
                    rango: []
                    zerox: []
                  fromAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  nativeBlacklist: []
                  preferredProvider: symbiosis
                  receiver: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  refundAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  showDangerousRoutes: true
                  showFailedRoutes: false
                  timeout: 32
              02-ethereum.usdt-polygon.usdt:
                summary: ETH.USDT to POLYGON.USDT
                value:
                  dstTokenAddress: '0xc2132d05d31c914a87c6611c10748aeb04b58e8f'
                  dstTokenBlockchain: POLYGON
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  enableChecks: true
                  enableTestnets: false
                  foreignBlacklist:
                    lifi: []
                    rango: []
                    zerox: []
                  fromAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  nativeBlacklist: []
                  preferredProvider: symbiosis
                  receiver: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  refundAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  showDangerousRoutes: true
                  showFailedRoutes: false
                  timeout: 32
              03-ethereum.usdt-bnb.usdt:
                summary: ETH.USDT to BNB.USDT
                value:
                  dstTokenAddress: '0x55d398326f99059ff775485246999027b3197955'
                  dstTokenBlockchain: BSC
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  enableChecks: true
                  enableTestnets: false
                  foreignBlacklist:
                    lifi: []
                    rango: []
                    zerox: []
                  fromAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  nativeBlacklist: []
                  preferredProvider: symbiosis
                  receiver: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  refundAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  showDangerousRoutes: true
                  showFailedRoutes: false
                  timeout: 32
              04-ethereum.usdt-ethereum.native:
                summary: ETH.USDT to ETH.ETH
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  enableChecks: true
                  enableTestnets: false
                  foreignBlacklist:
                    lifi: []
                    rango: []
                    zerox: []
                  fromAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  nativeBlacklist: []
                  preferredProvider: symbiosis
                  receiver: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  refundAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  showDangerousRoutes: true
                  showFailedRoutes: false
                  timeout: 32
              05-solana.usdt-ethereum.usdt:
                summary: SOL.USDT to ETH.USDT
                value:
                  dstTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  srcTokenAmount: '50'
                  srcTokenBlockchain: SOLANA
                  enableChecks: true
                  enableTestnets: false
                  foreignBlacklist:
                    lifi: []
                    rango: []
                    zerox: []
                  fromAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  nativeBlacklist: []
                  preferredProvider: symbiosis
                  receiver: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  refundAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  showDangerousRoutes: true
                  showFailedRoutes: false
                  timeout: 32
              06-ethereum.usdt-solana.usdt:
                summary: ETH.USDT to SOL.USDT
                value:
                  dstTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  dstTokenBlockchain: SOLANA
                  referrer: rubic.exchange
                  srcTokenAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  enableChecks: true
                  enableTestnets: false
                  foreignBlacklist:
                    lifi: []
                    rango: []
                    zerox: []
                  fromAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  nativeBlacklist: []
                  preferredProvider: symbiosis
                  receiver: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  refundAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  showDangerousRoutes: true
                  showFailedRoutes: false
                  timeout: 32
              07-solana.usdt-solana.usdc:
                summary: SOL.USDT to SOL.USDC
                value:
                  dstTokenAddress: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
                  dstTokenBlockchain: SOLANA
                  referrer: rubic.exchange
                  srcTokenAddress: Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB
                  srcTokenAmount: '50'
                  srcTokenBlockchain: SOLANA
                  enableChecks: true
                  enableTestnets: false
                  foreignBlacklist:
                    lifi: []
                    rango: []
                    zerox: []
                  fromAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  nativeBlacklist: []
                  preferredProvider: symbiosis
                  receiver: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  refundAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  showDangerousRoutes: true
                  showFailedRoutes: false
                  timeout: 32
              08-ethereum.usdc-tron.usdc:
                summary: ETH.USDC to TRON.USDC
                value:
                  dstTokenAddress: TEkxiTehnzSmSe2XqrBj4w32RUN966rdz8
                  dstTokenBlockchain: TRON
                  referrer: rubic.exchange
                  srcTokenAddress: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48'
                  srcTokenAmount: '50'
                  srcTokenBlockchain: ETH
                  enableChecks: true
                  enableTestnets: false
                  foreignBlacklist:
                    lifi: []
                    rango: []
                    zerox: []
                  fromAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  nativeBlacklist: []
                  preferredProvider: symbiosis
                  receiver: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  refundAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  showDangerousRoutes: true
                  showFailedRoutes: false
                  timeout: 32
              09-ton.usdt-ton.native:
                summary: TON.USDT to TON.TON
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: TON
                  referrer: rubic.exchange
                  srcTokenAddress: EQCxE6mUtQJKFnGfaROTKOt1lZbDiiX1kCixRv7Nw2Id_sDs
                  srcTokenAmount: '10'
                  srcTokenBlockchain: TON
                  enableChecks: true
                  enableTestnets: false
                  foreignBlacklist:
                    lifi: []
                    rango: []
                    zerox: []
                  fromAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  nativeBlacklist: []
                  preferredProvider: symbiosis
                  receiver: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  refundAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  showDangerousRoutes: true
                  showFailedRoutes: false
                  timeout: 32
              10-bitcoin.native-merlin.native:
                summary: BTC.BITCOIN to MERLIN.BTC
                value:
                  dstTokenAddress: '0x0000000000000000000000000000000000000000'
                  dstTokenBlockchain: MERLIN
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '0.01'
                  srcTokenBlockchain: BITCOIN
                  enableChecks: true
                  enableTestnets: false
                  foreignBlacklist:
                    lifi: []
                    rango: []
                    zerox: []
                  fromAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  nativeBlacklist: []
                  preferredProvider: symbiosis
                  receiver: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  refundAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  showDangerousRoutes: true
                  showFailedRoutes: false
                  timeout: 32
              11-bitcoin.native-ethereum.wbtc:
                summary: BTC.BITCOIN to ETH.WBTC
                value:
                  dstTokenAddress: '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599'
                  dstTokenBlockchain: ETH
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '0.01'
                  srcTokenBlockchain: BITCOIN
                  enableChecks: true
                  enableTestnets: false
                  foreignBlacklist:
                    lifi: []
                    rango: []
                    zerox: []
                  fromAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  nativeBlacklist: []
                  preferredProvider: symbiosis
                  receiver: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  refundAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  showDangerousRoutes: true
                  showFailedRoutes: false
                  timeout: 32
              12-sui.native-sui.usdc:
                summary: SUI.SUI to SUI.USDC
                value:
                  dstTokenAddress: >-
                    0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC
                  dstTokenBlockchain: SUI
                  referrer: rubic.exchange
                  srcTokenAddress: >-
                    0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI
                  srcTokenAmount: '10'
                  srcTokenBlockchain: SUI
                  enableChecks: true
                  enableTestnets: false
                  foreignBlacklist:
                    lifi: []
                    rango: []
                    zerox: []
                  fromAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  nativeBlacklist: []
                  preferredProvider: symbiosis
                  receiver: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  refundAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  showDangerousRoutes: true
                  showFailedRoutes: false
                  timeout: 32
              13-ethereum.native-sui.native:
                summary: ETH.NATIVE to SUI.SUI
                value:
                  dstTokenAddress: >-
                    0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI
                  dstTokenBlockchain: SUI
                  referrer: rubic.exchange
                  srcTokenAddress: '0x0000000000000000000000000000000000000000'
                  srcTokenAmount: '10'
                  srcTokenBlockchain: ETH
                  enableChecks: true
                  enableTestnets: false
                  foreignBlacklist:
                    lifi: []
                    rango: []
                    zerox: []
                  fromAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  nativeBlacklist: []
                  preferredProvider: symbiosis
                  receiver: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  refundAddress: '0x0a4c79cE84202b03e95B7a692E5D728d83C44c76'
                  showDangerousRoutes: true
                  showFailedRoutes: false
                  timeout: 32
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SwapResponseDto'
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SwapResponseDto'
      tags:
        - Router
  /api/utility/healthcheck:
    get:
      operationId: UtilsController_healthcheck
      summary: Health check
      description: >-
        This endpoint returns the current health status of the API. It can be
        used to verify service availability and basic system readiness.
      parameters: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: string
      tags:
        - Utility
  /api/utility/claim:
    get:
      operationId: UtilsController_claimTokens
      summary: Get claim tokens data
      description: >-
        This endpoint returns the data required to claim or redeem tokens for
        the Arbitrum Bridge (ETH ↔ Arbitrum). It is used after a successful
        source-chain transaction to prepare the on-chain call on the destination
        network.
      parameters:
        - name: fromBlockchain
          required: true
          in: query
          schema:
            enum:
              - ARBITRUM
              - ETH
            type: string
        - name: sourceTransactionHash
          required: true
          in: query
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionDto'
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionDto'
      tags:
        - Utility
  /api/utility/celerRefund:
    get:
      operationId: UtilsController_celerRefund
      summary: Get celer refund data
      description: >-
        This endpoint returns the data required to refund a transaction via the
        Celer Bridge. It is used when a cross-chain transaction cannot be
        completed and a refund must be executed on the source or destination
        network.
      parameters:
        - name: fromBlockchain
          required: true
          in: query
          schema:
            enum:
              - BSC
              - POLYGON
              - AVALANCHE
              - ETH
              - FANTOM
              - ARBITRUM
              - AURORA
              - OPTIMISM
              - ASTAR_EVM
              - GOERLI
              - BSCT
              - MUMBAI
              - FUJI
            type: string
        - name: sourceTransactionHash
          required: true
          in: query
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionDto'
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionDto'
      tags:
        - Utility
  /api/utility/checkApprove:
    get:
      operationId: UtilsController_checkApprove
      summary: Get approve info
      description: >-
        This endpoint determines whether a token approval is required on the
        specified blockchain. If approval is needed, it returns all transaction
        data required to execute the approval on-chain.
      parameters:
        - name: blockchain
          required: true
          in: query
          description: Blockchain name
          schema:
            enum:
              - MUMBAI
              - BSCT
              - GOERLI
              - FUJI
              - SCROLL_SEPOLIA
              - ARTHERA
              - SEPOLIA
              - BERACHAIN_TESTNET
              - BLAST_TESTNET
              - HOLESKY
              - UNICHAIN_SEPOLIA_TESTNET
              - ETH
              - BSC
              - POLYGON
              - POLYGON_ZKEVM
              - AVALANCHE
              - MOONRIVER
              - FANTOM
              - HARMONY
              - ARBITRUM
              - AURORA
              - TELOS
              - OPTIMISM
              - CRONOS
              - OKX
              - GNOSIS
              - FUSE
              - MOONBEAM
              - CELO
              - BOBA
              - BOBA_BSC
              - ASTAR_EVM
              - KAVA
              - BITGERT
              - OASIS
              - METIS
              - DEFIKINGDOMS
              - KLAYTN
              - VELAS
              - SYSCOIN
              - ETHEREUM_CLASSIC
              - FLARE
              - IOTEX
              - THETA
              - ZK_SYNC
              - PULSECHAIN
              - LINEA
              - BASE
              - MANTLE
              - MANTA_PACIFIC
              - SCROLL
              - ZETACHAIN
              - BLAST
              - HORIZEN_EON
              - MERLIN
              - ROOTSTOCK
              - MODE
              - ZK_FAIR
              - ZK_LINK
              - XLAYER
              - TAIKO
              - SEI
              - CORE
              - BAHAMUT
              - BITLAYER
              - GRAVITY
              - FRAXTAL
              - BERACHAIN
              - SONEIUM
              - UNICHAIN
              - MORPH
              - HEMI
              - PLASMA
              - MONAD
              - HYPER_EVM
              - MEGAETH
              - BITCOIN_CASH
              - NEAR
              - ICP
              - CARDANO
              - AION
              - ALGORAND
              - APTOS
              - ARDOR
              - ARK
              - ASTAR
              - COSMOS
              - BAND_PROTOCOL
              - BITCOIN_DIAMOND
              - BSV
              - BITCOIN_GOLD
              - CASPER
              - DASH
              - DECRED
              - DIGI_BYTE
              - DIVI
              - DOGECOIN
              - POLKADOT
              - MULTIVERS_X
              - FIO_PROTOCOL
              - FIRO
              - FLOW
              - HEDERA
              - HELIUM
              - ICON
              - IOST
              - IOTA
              - KADENA
              - KOMODO
              - KUSAMA
              - LISK
              - LITECOIN
              - TERRA
              - TERRA_CLASSIC
              - MINA_PROTOCOL
              - NANO
              - NEO
              - OSMOSIS
              - PIVX
              - POLYX
              - QTUM
              - THOR_CHAIN
              - RAVENCOIN
              - SIA
              - SECRET
              - STEEM
              - STRATIS
              - STACKS
              - SOLAR
              - VE_CHAIN
              - WAVES
              - WAX
              - DX_CHAIN
              - E_CASH
              - NEM
              - STELLAR
              - MONERO
              - RIPPLE
              - TEZOS
              - VERGE
              - SYMBOL
              - ZCASH
              - HORIZEN
              - ZILLIQA
              - KAVA_COSMOS
              - FILECOIN
              - EOS
              - ONTOLOGY
              - XDC
              - STARKNET
              - TON
              - SOLANA
              - BITCOIN
              - TRON
              - SUI
            type: string
        - name: tokenAddress
          required: true
          in: query
          description: Address of ERC20 token
          schema:
            type: string
        - name: walletAddress
          required: true
          in: query
          description: Owner wallet address
          schema:
            type: string
        - name: spenderAddress
          required: true
          in: query
          description: Address of spender contract
          schema:
            type: string
        - name: amount
          required: true
          in: query
          description: Non wei amount for approve
          schema:
            example: 10.5
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApproveResponseDto'
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApproveResponseDto'
      tags:
        - Utility
  /api/utility/allowance:
    get:
      operationId: UtilsController_getAllowance
      summary: Get allowance
      description: >-
        This endpoint retrieves the current allowance value for an ERC-20 token
        on the specified blockchain. It is typically used before calling the
        approve endpoint to decide whether additional approval is needed.
      parameters:
        - name: blockchain
          required: true
          in: query
          description: Blockchain name
          schema:
            enum:
              - MUMBAI
              - BSCT
              - GOERLI
              - FUJI
              - SCROLL_SEPOLIA
              - ARTHERA
              - SEPOLIA
              - BERACHAIN_TESTNET
              - BLAST_TESTNET
              - HOLESKY
              - UNICHAIN_SEPOLIA_TESTNET
              - ETH
              - BSC
              - POLYGON
              - POLYGON_ZKEVM
              - AVALANCHE
              - MOONRIVER
              - FANTOM
              - HARMONY
              - ARBITRUM
              - AURORA
              - TELOS
              - OPTIMISM
              - CRONOS
              - OKX
              - GNOSIS
              - FUSE
              - MOONBEAM
              - CELO
              - BOBA
              - BOBA_BSC
              - ASTAR_EVM
              - KAVA
              - BITGERT
              - OASIS
              - METIS
              - DEFIKINGDOMS
              - KLAYTN
              - VELAS
              - SYSCOIN
              - ETHEREUM_CLASSIC
              - FLARE
              - IOTEX
              - THETA
              - ZK_SYNC
              - PULSECHAIN
              - LINEA
              - BASE
              - MANTLE
              - MANTA_PACIFIC
              - SCROLL
              - ZETACHAIN
              - BLAST
              - HORIZEN_EON
              - MERLIN
              - ROOTSTOCK
              - MODE
              - ZK_FAIR
              - ZK_LINK
              - XLAYER
              - TAIKO
              - SEI
              - CORE
              - BAHAMUT
              - BITLAYER
              - GRAVITY
              - FRAXTAL
              - BERACHAIN
              - SONEIUM
              - UNICHAIN
              - MORPH
              - HEMI
              - PLASMA
              - MONAD
              - HYPER_EVM
              - MEGAETH
              - BITCOIN_CASH
              - NEAR
              - ICP
              - CARDANO
              - AION
              - ALGORAND
              - APTOS
              - ARDOR
              - ARK
              - ASTAR
              - COSMOS
              - BAND_PROTOCOL
              - BITCOIN_DIAMOND
              - BSV
              - BITCOIN_GOLD
              - CASPER
              - DASH
              - DECRED
              - DIGI_BYTE
              - DIVI
              - DOGECOIN
              - POLKADOT
              - MULTIVERS_X
              - FIO_PROTOCOL
              - FIRO
              - FLOW
              - HEDERA
              - HELIUM
              - ICON
              - IOST
              - IOTA
              - KADENA
              - KOMODO
              - KUSAMA
              - LISK
              - LITECOIN
              - TERRA
              - TERRA_CLASSIC
              - MINA_PROTOCOL
              - NANO
              - NEO
              - OSMOSIS
              - PIVX
              - POLYX
              - QTUM
              - THOR_CHAIN
              - RAVENCOIN
              - SIA
              - SECRET
              - STEEM
              - STRATIS
              - STACKS
              - SOLAR
              - VE_CHAIN
              - WAVES
              - WAX
              - DX_CHAIN
              - E_CASH
              - NEM
              - STELLAR
              - MONERO
              - RIPPLE
              - TEZOS
              - VERGE
              - SYMBOL
              - ZCASH
              - HORIZEN
              - ZILLIQA
              - KAVA_COSMOS
              - FILECOIN
              - EOS
              - ONTOLOGY
              - XDC
              - STARKNET
              - TON
              - SOLANA
              - BITCOIN
              - TRON
              - SUI
            type: string
        - name: tokenAddress
          required: true
          in: query
          description: Address of ERC20 token
          schema:
            type: string
        - name: walletAddress
          required: true
          in: query
          description: Owner wallet address
          schema:
            type: string
        - name: spenderAddress
          required: true
          in: query
          description: Address of spender contract
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AllowanceResponseDto'
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AllowanceResponseDto'
      tags:
        - Utility
  /api/utility/authWalletMessage:
    get:
      operationId: UtilsController_getMessageToAuth
      summary: Get message to auth wallet
      description: >-
        This endpoint provides a message required for wallet authentication when
        using the Retrobridge provider. The user must sign this message with
        their wallet, and the resulting signature must be attached to the swap
        request to enable transaction execution.
      parameters: []
      responses:
        '200':
          description: ''
      tags:
        - Utility
  /api/info/chains:
    get:
      operationId: InfoController_getBlockchains
      summary: Get chains list
      description: >-
        This endpoint returns a list of supported blockchains available for
        exchange and transactions in the Rubic API. Each blockchain object
        contains a name, an identifier, list of providers that support this
        blockchain, the type of blockchain and whether fee collection is
        available in this blockchain (proxyAvailable field)
      parameters:
        - name: includeTestnets
          required: false
          in: query
          schema:
            default: false
            type: boolean
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ChainDto'
        default:
          description: ''
          content:
            application/json:
              schema:
                type: array
      tags:
        - Info
  /api/info/providers:
    get:
      operationId: InfoController_getProviders
      summary: Get available providers
      description: >-
        This endpoint returns a list of supported providers available for swaps
        in the Rubic API. Each provider object contains list of supported by
        provider blockchains and provider name used in the API. Contains
        separate information for cross-chain providers and on-chain providers
      parameters:
        - name: includeTestnets
          required: false
          in: query
          schema:
            default: false
            type: boolean
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProvidersDto'
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProvidersDto'
      tags:
        - Info
  /api/info/status:
    get:
      operationId: InfoController_getStatus
      summary: Get transaction status
      deprecated: true
      description: 'DEPRECATED: use statusExtended'
      parameters:
        - name: srcTxHash
          required: true
          in: query
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StatusResponseDto'
      tags:
        - Info
  /api/info/statusExtended:
    get:
      operationId: InfoController_getStatusExtended
      summary: Get transaction status
      description: >-
        You can check the status of your cross-chain transaction by providing
        the source transaction hash and/or the id received in the /swap
        response. 

         The statusExtended response includes the transaction status on the destination chain and, if successful, the destination blockchain transaction hash. 

         For decentralized providers, both the source transaction hash and the id are required. For deposit-based providers only the id is required.
      parameters:
        - name: srcTxHash
          required: false
          in: query
          schema:
            type: string
        - name: id
          required: true
          in: query
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StatusResponseDto'
      tags:
        - Info
  /api/tokens/:
    get:
      operationId: TokensController_getTokens
      summary: Get token list
      parameters:
        - name: network
          required: false
          in: query
          description: Filter by "network"
          schema:
            example: ETH
            enum:
              - MUMBAI
              - BSCT
              - GOERLI
              - FUJI
              - SCROLL_SEPOLIA
              - ARTHERA
              - SEPOLIA
              - BERACHAIN_TESTNET
              - BLAST_TESTNET
              - HOLESKY
              - UNICHAIN_SEPOLIA_TESTNET
              - ETH
              - BSC
              - POLYGON
              - POLYGON_ZKEVM
              - AVALANCHE
              - MOONRIVER
              - FANTOM
              - HARMONY
              - ARBITRUM
              - AURORA
              - TELOS
              - OPTIMISM
              - CRONOS
              - OKX
              - GNOSIS
              - FUSE
              - MOONBEAM
              - CELO
              - BOBA
              - BOBA_BSC
              - ASTAR_EVM
              - KAVA
              - BITGERT
              - OASIS
              - METIS
              - DEFIKINGDOMS
              - KLAYTN
              - VELAS
              - SYSCOIN
              - ETHEREUM_CLASSIC
              - FLARE
              - IOTEX
              - THETA
              - ZK_SYNC
              - PULSECHAIN
              - LINEA
              - BASE
              - MANTLE
              - MANTA_PACIFIC
              - SCROLL
              - ZETACHAIN
              - BLAST
              - HORIZEN_EON
              - MERLIN
              - ROOTSTOCK
              - MODE
              - ZK_FAIR
              - ZK_LINK
              - XLAYER
              - TAIKO
              - SEI
              - CORE
              - BAHAMUT
              - BITLAYER
              - GRAVITY
              - FRAXTAL
              - BERACHAIN
              - SONEIUM
              - UNICHAIN
              - MORPH
              - HEMI
              - PLASMA
              - MONAD
              - HYPER_EVM
              - MEGAETH
              - BITCOIN_CASH
              - NEAR
              - ICP
              - CARDANO
              - AION
              - ALGORAND
              - APTOS
              - ARDOR
              - ARK
              - ASTAR
              - COSMOS
              - BAND_PROTOCOL
              - BITCOIN_DIAMOND
              - BSV
              - BITCOIN_GOLD
              - CASPER
              - DASH
              - DECRED
              - DIGI_BYTE
              - DIVI
              - DOGECOIN
              - POLKADOT
              - MULTIVERS_X
              - FIO_PROTOCOL
              - FIRO
              - FLOW
              - HEDERA
              - HELIUM
              - ICON
              - IOST
              - IOTA
              - KADENA
              - KOMODO
              - KUSAMA
              - LISK
              - LITECOIN
              - TERRA
              - TERRA_CLASSIC
              - MINA_PROTOCOL
              - NANO
              - NEO
              - OSMOSIS
              - PIVX
              - POLYX
              - QTUM
              - THOR_CHAIN
              - RAVENCOIN
              - SIA
              - SECRET
              - STEEM
              - STRATIS
              - STACKS
              - SOLAR
              - VE_CHAIN
              - WAVES
              - WAX
              - DX_CHAIN
              - E_CASH
              - NEM
              - STELLAR
              - MONERO
              - RIPPLE
              - TEZOS
              - VERGE
              - SYMBOL
              - ZCASH
              - HORIZEN
              - ZILLIQA
              - KAVA_COSMOS
              - FILECOIN
              - EOS
              - ONTOLOGY
              - XDC
              - STARKNET
              - TON
              - SOLANA
              - BITCOIN
              - TRON
              - SUI
            type: string
        - name: title
          required: false
          in: query
          description: >-
            Filter by "name" of token, must match completely (should be
            UPPERCASE).
          schema:
            example: RUBIC TOKEN
            type: string
        - name: address
          required: false
          in: query
          description: Filter by "address" (case sensitive)
          schema:
            example: '0x3330bfb7332ca23cd071631837dc289b09c33333'
            type: string
        - name: symbol
          required: false
          in: query
          description: Filter by "symbol" (no case sensitivity)
          schema:
            example: RBC
            type: string
        - name: page
          required: false
          in: query
          schema:
            type: number
        - name: pageSize
          required: false
          in: query
          description: Number of results to return per page
          schema:
            example: 25
            type: number
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokensResponseDto'
      tags:
        - Tokens
  /api/utility/solana/relay:
    post:
      operationId: RelayController_relay
      summary: Get relay Options
      parameters: []
      requestBody:
        required: true
        description: Relay options
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RelayRequestDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RelayResponseDto'
      tags:
        - Utility
info:
  title: Rubic API
  description: The Rubic API description
  version: '1.0'
  contact: {}
tags: []
servers:
  - url: https://api-v2.rubic.exchange
    description: Production
components:
  schemas:
    ForeignBlacklistDto:
      type: object
      properties:
        lifi:
          type: array
          items:
            type: string
        rango:
          type: array
          items:
            type: string
        zerox:
          type: array
          items:
            type: string
        dflow:
          type: array
          items:
            type: string
    QuoteRequestDto:
      type: object
      properties:
        srcTokenAddress:
          type: string
          description: Destination token blockchain
        dstTokenBlockchain:
          type: string
          description: Destination token blockchain
          default: POLYGON
          enum:
            - MUMBAI
            - BSCT
            - GOERLI
            - FUJI
            - SCROLL_SEPOLIA
            - ARTHERA
            - SEPOLIA
            - BERACHAIN_TESTNET
            - BLAST_TESTNET
            - HOLESKY
            - UNICHAIN_SEPOLIA_TESTNET
            - ETH
            - BSC
            - POLYGON
            - POLYGON_ZKEVM
            - AVALANCHE
            - MOONRIVER
            - FANTOM
            - HARMONY
            - ARBITRUM
            - AURORA
            - TELOS
            - OPTIMISM
            - CRONOS
            - OKX
            - GNOSIS
            - FUSE
            - MOONBEAM
            - CELO
            - BOBA
            - BOBA_BSC
            - ASTAR_EVM
            - KAVA
            - BITGERT
            - OASIS
            - METIS
            - DEFIKINGDOMS
            - KLAYTN
            - VELAS
            - SYSCOIN
            - ETHEREUM_CLASSIC
            - FLARE
            - IOTEX
            - THETA
            - ZK_SYNC
            - PULSECHAIN
            - LINEA
            - BASE
            - MANTLE
            - MANTA_PACIFIC
            - SCROLL
            - ZETACHAIN
            - BLAST
            - HORIZEN_EON
            - MERLIN
            - ROOTSTOCK
            - MODE
            - ZK_FAIR
            - ZK_LINK
            - XLAYER
            - TAIKO
            - SEI
            - CORE
            - BAHAMUT
            - BITLAYER
            - GRAVITY
            - FRAXTAL
            - BERACHAIN
            - SONEIUM
            - UNICHAIN
            - MORPH
            - HEMI
            - PLASMA
            - MONAD
            - HYPER_EVM
            - MEGAETH
            - BITCOIN_CASH
            - NEAR
            - ICP
            - CARDANO
            - AION
            - ALGORAND
            - APTOS
            - ARDOR
            - ARK
            - ASTAR
            - COSMOS
            - BAND_PROTOCOL
            - BITCOIN_DIAMOND
            - BSV
            - BITCOIN_GOLD
            - CASPER
            - DASH
            - DECRED
            - DIGI_BYTE
            - DIVI
            - DOGECOIN
            - POLKADOT
            - MULTIVERS_X
            - FIO_PROTOCOL
            - FIRO
            - FLOW
            - HEDERA
            - HELIUM
            - ICON
            - IOST
            - IOTA
            - KADENA
            - KOMODO
            - KUSAMA
            - LISK
            - LITECOIN
            - TERRA
            - TERRA_CLASSIC
            - MINA_PROTOCOL
            - NANO
            - NEO
            - OSMOSIS
            - PIVX
            - POLYX
            - QTUM
            - THOR_CHAIN
            - RAVENCOIN
            - SIA
            - SECRET
            - STEEM
            - STRATIS
            - STACKS
            - SOLAR
            - VE_CHAIN
            - WAVES
            - WAX
            - DX_CHAIN
            - E_CASH
            - NEM
            - STELLAR
            - MONERO
            - RIPPLE
            - TEZOS
            - VERGE
            - SYMBOL
            - ZCASH
            - HORIZEN
            - ZILLIQA
            - KAVA_COSMOS
            - FILECOIN
            - EOS
            - ONTOLOGY
            - XDC
            - STARKNET
            - TON
            - SOLANA
            - BITCOIN
            - TRON
            - SUI
        srcTokenBlockchain:
          type: string
          description: Source token blockchain
          default: ETH
          enum:
            - MUMBAI
            - BSCT
            - GOERLI
            - FUJI
            - SCROLL_SEPOLIA
            - ARTHERA
            - SEPOLIA
            - BERACHAIN_TESTNET
            - BLAST_TESTNET
            - HOLESKY
            - UNICHAIN_SEPOLIA_TESTNET
            - ETH
            - BSC
            - POLYGON
            - POLYGON_ZKEVM
            - AVALANCHE
            - MOONRIVER
            - FANTOM
            - HARMONY
            - ARBITRUM
            - AURORA
            - TELOS
            - OPTIMISM
            - CRONOS
            - OKX
            - GNOSIS
            - FUSE
            - MOONBEAM
            - CELO
            - BOBA
            - BOBA_BSC
            - ASTAR_EVM
            - KAVA
            - BITGERT
            - OASIS
            - METIS
            - DEFIKINGDOMS
            - KLAYTN
            - VELAS
            - SYSCOIN
            - ETHEREUM_CLASSIC
            - FLARE
            - IOTEX
            - THETA
            - ZK_SYNC
            - PULSECHAIN
            - LINEA
            - BASE
            - MANTLE
            - MANTA_PACIFIC
            - SCROLL
            - ZETACHAIN
            - BLAST
            - HORIZEN_EON
            - MERLIN
            - ROOTSTOCK
            - MODE
            - ZK_FAIR
            - ZK_LINK
            - XLAYER
            - TAIKO
            - SEI
            - CORE
            - BAHAMUT
            - BITLAYER
            - GRAVITY
            - FRAXTAL
            - BERACHAIN
            - SONEIUM
            - UNICHAIN
            - MORPH
            - HEMI
            - PLASMA
            - MONAD
            - HYPER_EVM
            - MEGAETH
            - BITCOIN_CASH
            - NEAR
            - ICP
            - CARDANO
            - AION
            - ALGORAND
            - APTOS
            - ARDOR
            - ARK
            - ASTAR
            - COSMOS
            - BAND_PROTOCOL
            - BITCOIN_DIAMOND
            - BSV
            - BITCOIN_GOLD
            - CASPER
            - DASH
            - DECRED
            - DIGI_BYTE
            - DIVI
            - DOGECOIN
            - POLKADOT
            - MULTIVERS_X
            - FIO_PROTOCOL
            - FIRO
            - FLOW
            - HEDERA
            - HELIUM
            - ICON
            - IOST
            - IOTA
            - KADENA
            - KOMODO
            - KUSAMA
            - LISK
            - LITECOIN
            - TERRA
            - TERRA_CLASSIC
            - MINA_PROTOCOL
            - NANO
            - NEO
            - OSMOSIS
            - PIVX
            - POLYX
            - QTUM
            - THOR_CHAIN
            - RAVENCOIN
            - SIA
            - SECRET
            - STEEM
            - STRATIS
            - STACKS
            - SOLAR
            - VE_CHAIN
            - WAVES
            - WAX
            - DX_CHAIN
            - E_CASH
            - NEM
            - STELLAR
            - MONERO
            - RIPPLE
            - TEZOS
            - VERGE
            - SYMBOL
            - ZCASH
            - HORIZEN
            - ZILLIQA
            - KAVA_COSMOS
            - FILECOIN
            - EOS
            - ONTOLOGY
            - XDC
            - STARKNET
            - TON
            - SOLANA
            - BITCOIN
            - TRON
            - SUI
        srcTokenAmount:
          type: string
          description: Source token amount with decimals
          example: '1.05'
        dstTokenAddress:
          type: string
          description: Destination token address
          example: '0x0000000000000000000000000000000000000000'
        nativeBlacklist:
          description: Native provider-calculation to exclude from calculation
          default: []
          type: array
          items:
            type: string
        showFailedRoutes:
          type: boolean
          description: Show failed routes in response or not
          example: false
          default: false
        showDangerousRoutes:
          type: boolean
          description: Show dangerous routes in response or not
          example: false
          default: false
        depositTradeParams:
          type: string
          default: all
          enum:
            - onlyDeposits
            - noDeposits
            - all
        integratorAddress:
          type: string
          description: Integrator address to set fees
        fromAddress:
          type: string
          description: Wallet address to send funds from
        slippage:
          type: number
          description: Slippage tolerance in percents for trade
          example: 0.02
          maximum: 0.5
        receiver:
          type: string
          description: Wallet address to send tokens to on the destination blockchain
        preferredProvider:
          type: string
          description: Preferred provider for calculation
          enum:
            - symbiosis
            - lifi
            - dln
            - bridgers
            - multichain
            - xy
            - celer_bridge
            - changenow
            - stargate_v2
            - arbitrum
            - squidrouter
            - scroll_bridge
            - taiko_bridge
            - rango
            - pulsechain_bridge
            - orbiter_bridge
            - orbiter_bridge_v2
            - owl_to_bridge
            - layerzero
            - archon_bridge
            - meson
            - eddy_bridge
            - router
            - retro_bridge
            - across
            - unizen
            - simple_swap
            - changelly
            - tele_swap
            - wanchain_bridge
            - relay
            - xflows
            - wormhole
            - exolix
            - near_intents
            - usdt_zero_bridge
            - houdini
            - quickex
            - rubic_stellar_api
            - 10K_SWAP
            - AERODROME
            - ACRYPTOS
            - ALDRIN_EXCHANGE
            - ALGEBRA
            - ALGEBRA_INTEGRAL
            - ANNEX
            - APE_SWAP
            - ARTH_SWAP
            - ASTRO_SWAP
            - ASCENT
            - AURORA_SWAP
            - AVNU
            - AETHON_SWAP
            - ATLANTIS
            - AQUARIUS
            - BABY_SWAP
            - BALANCER
            - BASE_SWAP
            - BEAM_SWAP
            - BI_SWAP
            - BRIDGERS
            - BLAZE_SWAP
            - BULBA_SWAP
            - CAMELOT
            - CETUS
            - CHERRY_SWAP
            - CLAIM_SWAP
            - CLEARSWAP
            - COFFEE_SWAP
            - CREMA_FINANCE
            - CRO_SWAP
            - CRONA_SWAP
            - CROPPER_FINANCE
            - CROW_FI
            - CRO_DEX
            - CURVE
            - CLOBER
            - DEDUST
            - DEFI_PLAZA
            - DEFI_SWAP
            - DFLOW
            - DFYN
            - DLN
            - DODO
            - DRAGON_SWAP
            - DYSTOPIA
            - ECHO_DEX
            - EDDY_FINANCE
            - ELK
            - ENOSYS
            - ENOSYS_V3
            - FENIX_V2
            - FENIX_V3
            - FINKUJIRA
            - FUSIONX
            - FRAX_SWAP_V2
            - HONEY_SWAP
            - HORIZONDEX
            - JET_SWAP
            - JOE
            - JUPITER
            - JUPITER_SWAP
            - J_SWAP
            - KIM
            - KODIAK
            - KUJATA
            - KYBER_SWAP
            - KYO_FINANCE
            - LUA_SWAP
            - LIFI
            - MACARON
            - MAVERICK
            - MDEX
            - MERLIN_SWAP
            - MESH_SWAP
            - MM_FINANCE
            - MOJITO_SWAP
            - MUTE_SWAP
            - NET_SWAP
            - NATIVE_ROUTER
            - ODOS
            - OKC_SWAP
            - OKU_SWAP
            - ONE_INCH
            - ONE_MOON
            - ONE_SOL
            - OMNIDEX
            - OOLONG_SWAP
            - OPEN_OCEAN
            - ORCA_SWAP
            - OSMOSIS_SWAP
            - OCTO_SWAP
            - PANCAKE_SWAP
            - PANCAKE_SWAP_V3
            - PANGOLIN
            - PARA_SWAP
            - PEGASYS
            - PHOTON_SWAP
            - POLYDEX
            - PITEAS
            - QUICK_SWAP
            - QUICK_SWAP_V3
            - PULSEX_V1
            - PULSEX_V2
            - RANGO
            - RAYDIUM
            - REF_FINANCE
            - REN_BTC
            - ROUTER_SWAP
            - RUBIC_STELLAR_API
            - SABER_STABLE_SWAP
            - SAROS_SWAP
            - SERUM
            - SHIBA_SWAP
            - SILK_SWAP
            - SMOOTHY
            - SOLANA
            - SOLAR_BEAM
            - SPACEFI_SWAP
            - SPIRIT_SWAP
            - SPL_TOKEN_SWAP
            - SPOOKY_SWAP
            - SOUL_SWAP
            - STELLA_SWAP
            - STONFI
            - SUN_SWAP
            - SURFDEX
            - SUSHI_SWAP
            - SYNAPSE
            - SYNC_SWAP
            - SPARK_DEX
            - SPARK_DEX_V3
            - SQUIDROUTER
            - SYMBIOSIS_SWAP
            - SOROSWAP
            - TONCO_DEX
            - TRADER
            - TRISOLARIS
            - IZUMI
            - UBE_SWAP
            - UNISWAP_V2
            - UNI_SWAP_V3
            - UNIZEN
            - VERSE
            - VIPER_SWAP
            - VOLTAGE_SWAP
            - VOOI
            - VVS_FINANCE
            - WAGYU_SWAP
            - WANNA_SWAP
            - WAULT_SWAP
            - WOO_FI
            - WRAPPED
            - WYND
            - WARPX_V2
            - WARPX_V3
            - XY_DEX
            - YUZU_SWAP
            - ZAPPY
            - ZIP_SWAP
            - ZRX
            - ZETA_SWAP
            - HYPERCAT
        foreignBlacklist:
          description: Foreign provider-calculation to exclude from calculation
          default:
            dflow: []
            lifi: []
            rango: []
            zerox: []
          allOf:
            - $ref: '#/components/schemas/ForeignBlacklistDto'
        timeout:
          type: number
          description: Calculation timeout in seconds
          example: 32
          default: 30
          minimum: 2
          maximum: 60
        enableTestnets:
          type: boolean
          description: Use testnets for calculation or not
          example: false
        referrer:
          type: object
          description: Referrer address
          example: rubic.exchange
          default: rubic.exchange
        enableChecks:
          type: object
          description: Enable allowance enough check
          default: false
        skipFeeProviders:
          type: object
          description: Skip providers with fee in route
          default: false
      required:
        - srcTokenAddress
        - dstTokenBlockchain
        - srcTokenBlockchain
        - srcTokenAmount
        - dstTokenAddress
        - receiver
        - referrer
    QuoteAllDto:
      type: object
      properties:
        quote:
          description: Quote response data
          allOf:
            - $ref: '#/components/schemas/QuoteRequestDto'
        routes:
          description: Successful routes
          type: array
          items:
            type: object
        failed:
          description: Failed routes
          type: array
          items:
            type: object
      required:
        - quote
        - routes
    TokenAmountDto:
      type: object
      properties:
        address:
          type: string
          description: Token address
          example: '0x0000000000000000000000000000000000000000'
        decimals:
          type: number
          description: Token decimals
          example: 18
        symbol:
          type: string
          description: Token symbol
          example: ETH
        name:
          type: string
          description: Token name
          example: Ethereum
        blockchainId:
          type: number
          description: Blockchain id
          example: '1'
        blockchain:
          type: object
          description: Blockchain name
          example: ETH
        price:
          type: number
          description: Token price in USD
          example: '1.35'
        amount:
          type: string
          description: Token amount
          example: '0.00123'
      required:
        - address
        - decimals
        - symbol
        - name
        - blockchainId
        - blockchain
        - amount
    TokenDto:
      type: object
      properties:
        address:
          type: string
          description: Token address
          example: '0x0000000000000000000000000000000000000000'
        decimals:
          type: number
          description: Token decimals
          example: 18
        symbol:
          type: string
          description: Token symbol
          example: ETH
        name:
          type: string
          description: Token name
          example: Ethereum
        blockchainId:
          type: number
          description: Blockchain id
          example: '1'
        blockchain:
          type: object
          description: Blockchain name
          example: ETH
        price:
          type: number
          description: Token price in USD
          example: '1.35'
      required:
        - address
        - decimals
        - symbol
        - name
        - blockchainId
        - blockchain
    QuoteTokensDto:
      type: object
      properties:
        from:
          $ref: '#/components/schemas/TokenAmountDto'
        to:
          $ref: '#/components/schemas/TokenDto'
      required:
        - from
        - to
    EstimatesDto:
      type: object
      properties:
        destinationTokenAmount:
          type: string
          description: Expected amount of tokens to receive in destination chains
          example: '1.05'
        destinationTokenMinAmount:
          type: string
          description: Minimum amount of tokens to receive in destination chain
          example: '1.02'
        destinationWeiAmount:
          type: string
          description: Expected amount of tokens to receive in destination chain in WEI
          example: '105000000000000000'
        destinationWeiMinAmount:
          type: string
          description: Minimum amount of tokens to receive in destination chain in WEI
          example: '102000000000000000'
        destinationUsdAmount:
          type: number
          description: Expected USD amount of tokens to receive in destination chain
          example: '25.31'
        destinationUsdMinAmount:
          type: number
          description: Minimum USD amount of tokens to receive in destination chain
          example: '25.31'
        durationInMinutes:
          type: number
          description: Expected duration of the trade in minutes
          example: '5'
        slippage:
          type: number
          description: Expected slippage percent
          example: '5'
        priceImpact:
          type: number
          nullable: true
          description: Price impact
          example: '3'
        intermidiateTokenWeiAmount:
          type: string
          description: >-
            Wei amount of intermidiate token, which is used in Rubic-Private
            provider
          example: '105000000000000000'
      required:
        - destinationTokenAmount
        - destinationTokenMinAmount
        - destinationWeiAmount
        - destinationWeiMinAmount
        - durationInMinutes
        - slippage
        - priceImpact
        - intermidiateTokenWeiAmount
    GasFeeDto:
      type: object
      properties:
        gasPrice:
          type: string
          nullable: true
          description: Estimated gas price in source network in WEI
          example: '1000000000000000000'
        baseFee:
          type: string
          nullable: true
          description: Estimated gas price in source network in WEI
          example: '1000000000000000000'
        maxFeePerGas:
          type: string
          nullable: true
          description: Estimated gas price in source network in WEI
          example: '1000000000000000000'
        maxPriorityFeePerGas:
          type: string
          nullable: true
          description: Estimated gas price in source network in WEI
          example: '1000000000000000000'
        gasLimit:
          type: string
          nullable: true
          description: Estimated limit in source network in WEI
          example: '1000000000000000'
        totalWeiAmount:
          type: string
          nullable: true
          description: Estimated total amount of spent GAS
          example: '5020000000000000'
        totalUsdAmount:
          type: number
          nullable: true
          description: Estimated USD amount of spent GAS
          example: '15.31'
      required:
        - gasPrice
        - baseFee
        - maxFeePerGas
        - maxPriorityFeePerGas
        - gasLimit
        - totalWeiAmount
        - totalUsdAmount
    ProtocolFeeDto:
      type: object
      properties:
        fixedAmount:
          type: string
          description: Rubic protocol fee in native tokens
          example: '0.00013'
        fixedWeiAmount:
          type: string
          description: Rubic protocol fee in WEI
          example: '130000000000000'
        fixedUsdAmount:
          type: number
          description: Rubic protocol fee in USD
          example: '1.53'
      required:
        - fixedAmount
        - fixedWeiAmount
        - fixedUsdAmount
    ProviderFeeDto:
      type: object
      properties:
        fixedAmount:
          type: string
          description: Provider fee in native tokens
          example: '0.00013'
        fixedWeiAmount:
          type: string
          description: Provider fee in WEI
          example: '130000000000000'
        fixedUsdAmount:
          type: number
          description: Provider fee in USD
          example: '1.53'
      required:
        - fixedAmount
        - fixedWeiAmount
        - fixedUsdAmount
    PercentFeeDto:
      type: object
      properties:
        percent:
          type: number
          description: Percent
        token:
          nullable: true
          description: Token
          allOf:
            - $ref: '#/components/schemas/TokenDto'
      required:
        - percent
        - token
    FeesDto:
      type: object
      properties:
        gasTokenFees:
          type: object
          properties:
            gas:
              required: true
              $ref: '#/components/schemas/GasFeeDto'
            protocol:
              required: true
              $ref: '#/components/schemas/ProtocolFeeDto'
            provider:
              required: true
              $ref: '#/components/schemas/ProviderFeeDto'
            nativeToken:
              required: true
              $ref: '#/components/schemas/TokenDto'
        percentFees:
          $ref: '#/components/schemas/PercentFeeDto'
      required:
        - gasTokenFees
        - percentFees
    RoutingDto:
      type: object
      properties:
        type:
          type: object
          description: Swap type
        provider:
          type: string
          description: Provider name
        path:
          description: Tokens path
          type: array
          items:
            $ref: '#/components/schemas/TokenAmountDto'
      required:
        - type
        - provider
        - path
    TonEncodedConfigDto:
      type: object
      properties:
        address:
          type: string
          description: >-
            In default transfer - it's a receiverWalletAddress to send funds. In
            tx using contracts - it's a jettonWalletAddress (like ERC-20, but in
            TON)
        amount:
          type: string
          description: >-
            Amount to send tx in nanotons. In default trasfer - it's a
            transfered value + gasFee. 

            In tx using contracts - it's static gasFee, by default
            toNano(0.05).toString()
        payload:
          type: string
          description: Data for contract.
        stateInit:
          type: string
      required:
        - address
        - amount
    TransactionDto:
      type: object
      properties:
        approvalAddress:
          type: string
          description: Gateway address to approve erc20 token
        permit2Address:
          type: string
          description: ''
        data:
          type: string
          description: Data to execute
        to:
          type: string
          description: Contract to call
        value:
          type: string
          description: ''
        depositAddress:
          type: string
          description: Address to deposit funds to
        amountToSend:
          type: string
          description: Token amount to send to deposit address
        extraFields:
          type: object
          description: Extra fields to perform the transaction
        exchangeId:
          type: string
          description: ''
        tonMessages:
          description: Messages array for tonConnectUI.sendTransaction() call
          type: array
          items:
            $ref: '#/components/schemas/TonEncodedConfigDto'
        psbt:
          type: string
          description: Unsigned psbt bitcoin transaction
        signInputs:
          description: Indexes of inputs which user have to sign
          type: array
          items:
            type: number
        feeLimit:
          type: number
          description: Fee limit for tron blockchain
        callValue:
          type: string
          description: Native token value for tron blockchain
        signature:
          type: string
          description: Function signature of tron transaction
        arguments:
          description: ''
          type: array
          items:
            type: string
        rawParameter:
          type: string
          description: Encoded tron transaction arguments
        transaction:
          type: string
          description: Fee limit for tron blockchain
    ErrorDto:
      type: object
      properties: {}
    QuoteResponseDto:
      type: object
      properties:
        id:
          type: string
          description: Trade identifier
        tokens:
          description: Quote response data
          allOf:
            - $ref: '#/components/schemas/QuoteTokensDto'
        swapType:
          type: object
          description: Swap type
        providerType:
          type: object
          description: Provider type
        estimate:
          description: Estimates
          allOf:
            - $ref: '#/components/schemas/EstimatesDto'
        fees:
          description: Fees
          allOf:
            - $ref: '#/components/schemas/FeesDto'
        routing:
          description: Routing data
          type: array
          items:
            $ref: '#/components/schemas/RoutingDto'
        transaction:
          description: Transaction data
          allOf:
            - $ref: '#/components/schemas/TransactionDto'
        warnings:
          description: Specific info about quote params provider
          type: array
          items:
            $ref: '#/components/schemas/ErrorDto'
        useRubicContract:
          type: boolean
      required:
        - id
        - tokens
        - swapType
        - providerType
        - estimate
        - fees
        - routing
        - transaction
        - warnings
        - useRubicContract
    QuoteDepositRequestDto:
      type: object
      properties:
        srcTokenAddress:
          type: string
          description: Destination token blockchain
        dstTokenBlockchain:
          type: string
          description: Destination token blockchain
          default: POLYGON
          enum:
            - MUMBAI
            - BSCT
            - GOERLI
            - FUJI
            - SCROLL_SEPOLIA
            - ARTHERA
            - SEPOLIA
            - BERACHAIN_TESTNET
            - BLAST_TESTNET
            - HOLESKY
            - UNICHAIN_SEPOLIA_TESTNET
            - ETH
            - BSC
            - POLYGON
            - POLYGON_ZKEVM
            - AVALANCHE
            - MOONRIVER
            - FANTOM
            - HARMONY
            - ARBITRUM
            - AURORA
            - TELOS
            - OPTIMISM
            - CRONOS
            - OKX
            - GNOSIS
            - FUSE
            - MOONBEAM
            - CELO
            - BOBA
            - BOBA_BSC
            - ASTAR_EVM
            - KAVA
            - BITGERT
            - OASIS
            - METIS
            - DEFIKINGDOMS
            - KLAYTN
            - VELAS
            - SYSCOIN
            - ETHEREUM_CLASSIC
            - FLARE
            - IOTEX
            - THETA
            - ZK_SYNC
            - PULSECHAIN
            - LINEA
            - BASE
            - MANTLE
            - MANTA_PACIFIC
            - SCROLL
            - ZETACHAIN
            - BLAST
            - HORIZEN_EON
            - MERLIN
            - ROOTSTOCK
            - MODE
            - ZK_FAIR
            - ZK_LINK
            - XLAYER
            - TAIKO
            - SEI
            - CORE
            - BAHAMUT
            - BITLAYER
            - GRAVITY
            - FRAXTAL
            - BERACHAIN
            - SONEIUM
            - UNICHAIN
            - MORPH
            - HEMI
            - PLASMA
            - MONAD
            - HYPER_EVM
            - MEGAETH
            - BITCOIN_CASH
            - NEAR
            - ICP
            - CARDANO
            - AION
            - ALGORAND
            - APTOS
            - ARDOR
            - ARK
            - ASTAR
            - COSMOS
            - BAND_PROTOCOL
            - BITCOIN_DIAMOND
            - BSV
            - BITCOIN_GOLD
            - CASPER
            - DASH
            - DECRED
            - DIGI_BYTE
            - DIVI
            - DOGECOIN
            - POLKADOT
            - MULTIVERS_X
            - FIO_PROTOCOL
            - FIRO
            - FLOW
            - HEDERA
            - HELIUM
            - ICON
            - IOST
            - IOTA
            - KADENA
            - KOMODO
            - KUSAMA
            - LISK
            - LITECOIN
            - TERRA
            - TERRA_CLASSIC
            - MINA_PROTOCOL
            - NANO
            - NEO
            - OSMOSIS
            - PIVX
            - POLYX
            - QTUM
            - THOR_CHAIN
            - RAVENCOIN
            - SIA
            - SECRET
            - STEEM
            - STRATIS
            - STACKS
            - SOLAR
            - VE_CHAIN
            - WAVES
            - WAX
            - DX_CHAIN
            - E_CASH
            - NEM
            - STELLAR
            - MONERO
            - RIPPLE
            - TEZOS
            - VERGE
            - SYMBOL
            - ZCASH
            - HORIZEN
            - ZILLIQA
            - KAVA_COSMOS
            - FILECOIN
            - EOS
            - ONTOLOGY
            - XDC
            - STARKNET
            - TON
            - SOLANA
            - BITCOIN
            - TRON
            - SUI
        srcTokenBlockchain:
          type: string
          description: Source token blockchain
          default: ETH
          enum:
            - MUMBAI
            - BSCT
            - GOERLI
            - FUJI
            - SCROLL_SEPOLIA
            - ARTHERA
            - SEPOLIA
            - BERACHAIN_TESTNET
            - BLAST_TESTNET
            - HOLESKY
            - UNICHAIN_SEPOLIA_TESTNET
            - ETH
            - BSC
            - POLYGON
            - POLYGON_ZKEVM
            - AVALANCHE
            - MOONRIVER
            - FANTOM
            - HARMONY
            - ARBITRUM
            - AURORA
            - TELOS
            - OPTIMISM
            - CRONOS
            - OKX
            - GNOSIS
            - FUSE
            - MOONBEAM
            - CELO
            - BOBA
            - BOBA_BSC
            - ASTAR_EVM
            - KAVA
            - BITGERT
            - OASIS
            - METIS
            - DEFIKINGDOMS
            - KLAYTN
            - VELAS
            - SYSCOIN
            - ETHEREUM_CLASSIC
            - FLARE
            - IOTEX
            - THETA
            - ZK_SYNC
            - PULSECHAIN
            - LINEA
            - BASE
            - MANTLE
            - MANTA_PACIFIC
            - SCROLL
            - ZETACHAIN
            - BLAST
            - HORIZEN_EON
            - MERLIN
            - ROOTSTOCK
            - MODE
            - ZK_FAIR
            - ZK_LINK
            - XLAYER
            - TAIKO
            - SEI
            - CORE
            - BAHAMUT
            - BITLAYER
            - GRAVITY
            - FRAXTAL
            - BERACHAIN
            - SONEIUM
            - UNICHAIN
            - MORPH
            - HEMI
            - PLASMA
            - MONAD
            - HYPER_EVM
            - MEGAETH
            - BITCOIN_CASH
            - NEAR
            - ICP
            - CARDANO
            - AION
            - ALGORAND
            - APTOS
            - ARDOR
            - ARK
            - ASTAR
            - COSMOS
            - BAND_PROTOCOL
            - BITCOIN_DIAMOND
            - BSV
            - BITCOIN_GOLD
            - CASPER
            - DASH
            - DECRED
            - DIGI_BYTE
            - DIVI
            - DOGECOIN
            - POLKADOT
            - MULTIVERS_X
            - FIO_PROTOCOL
            - FIRO
            - FLOW
            - HEDERA
            - HELIUM
            - ICON
            - IOST
            - IOTA
            - KADENA
            - KOMODO
            - KUSAMA
            - LISK
            - LITECOIN
            - TERRA
            - TERRA_CLASSIC
            - MINA_PROTOCOL
            - NANO
            - NEO
            - OSMOSIS
            - PIVX
            - POLYX
            - QTUM
            - THOR_CHAIN
            - RAVENCOIN
            - SIA
            - SECRET
            - STEEM
            - STRATIS
            - STACKS
            - SOLAR
            - VE_CHAIN
            - WAVES
            - WAX
            - DX_CHAIN
            - E_CASH
            - NEM
            - STELLAR
            - MONERO
            - RIPPLE
            - TEZOS
            - VERGE
            - SYMBOL
            - ZCASH
            - HORIZEN
            - ZILLIQA
            - KAVA_COSMOS
            - FILECOIN
            - EOS
            - ONTOLOGY
            - XDC
            - STARKNET
            - TON
            - SOLANA
            - BITCOIN
            - TRON
            - SUI
        srcTokenAmount:
          type: string
          description: Source token amount with decimals
          example: '1.05'
        dstTokenAddress:
          type: string
          description: Destination token address
          example: '0x0000000000000000000000000000000000000000'
        nativeBlacklist:
          description: Native provider-calculation to exclude from calculation
          default: []
          type: array
          items:
            type: string
        integratorAddress:
          type: string
          description: Integrator address to set fees
        slippage:
          type: number
          description: Slippage tolerance in percents for trade
          example: 0.02
          maximum: 0.5
        receiver:
          type: string
          description: Wallet address to send tokens to on the destination blockchain
        preferredProvider:
          type: string
          description: Preferred provider for calculation
          enum:
            - symbiosis
            - lifi
            - dln
            - bridgers
            - multichain
            - xy
            - celer_bridge
            - changenow
            - stargate_v2
            - arbitrum
            - squidrouter
            - scroll_bridge
            - taiko_bridge
            - rango
            - pulsechain_bridge
            - orbiter_bridge
            - orbiter_bridge_v2
            - owl_to_bridge
            - layerzero
            - archon_bridge
            - meson
            - eddy_bridge
            - router
            - retro_bridge
            - across
            - unizen
            - simple_swap
            - changelly
            - tele_swap
            - wanchain_bridge
            - relay
            - xflows
            - wormhole
            - exolix
            - near_intents
            - usdt_zero_bridge
            - houdini
            - quickex
            - rubic_stellar_api
            - 10K_SWAP
            - AERODROME
            - ACRYPTOS
            - ALDRIN_EXCHANGE
            - ALGEBRA
            - ALGEBRA_INTEGRAL
            - ANNEX
            - APE_SWAP
            - ARTH_SWAP
            - ASTRO_SWAP
            - ASCENT
            - AURORA_SWAP
            - AVNU
            - AETHON_SWAP
            - ATLANTIS
            - AQUARIUS
            - BABY_SWAP
            - BALANCER
            - BASE_SWAP
            - BEAM_SWAP
            - BI_SWAP
            - BRIDGERS
            - BLAZE_SWAP
            - BULBA_SWAP
            - CAMELOT
            - CETUS
            - CHERRY_SWAP
            - CLAIM_SWAP
            - CLEARSWAP
            - COFFEE_SWAP
            - CREMA_FINANCE
            - CRO_SWAP
            - CRONA_SWAP
            - CROPPER_FINANCE
            - CROW_FI
            - CRO_DEX
            - CURVE
            - CLOBER
            - DEDUST
            - DEFI_PLAZA
            - DEFI_SWAP
            - DFLOW
            - DFYN
            - DLN
            - DODO
            - DRAGON_SWAP
            - DYSTOPIA
            - ECHO_DEX
            - EDDY_FINANCE
            - ELK
            - ENOSYS
            - ENOSYS_V3
            - FENIX_V2
            - FENIX_V3
            - FINKUJIRA
            - FUSIONX
            - FRAX_SWAP_V2
            - HONEY_SWAP
            - HORIZONDEX
            - JET_SWAP
            - JOE
            - JUPITER
            - JUPITER_SWAP
            - J_SWAP
            - KIM
            - KODIAK
            - KUJATA
            - KYBER_SWAP
            - KYO_FINANCE
            - LUA_SWAP
            - LIFI
            - MACARON
            - MAVERICK
            - MDEX
            - MERLIN_SWAP
            - MESH_SWAP
            - MM_FINANCE
            - MOJITO_SWAP
            - MUTE_SWAP
            - NET_SWAP
            - NATIVE_ROUTER
            - ODOS
            - OKC_SWAP
            - OKU_SWAP
            - ONE_INCH
            - ONE_MOON
            - ONE_SOL
            - OMNIDEX
            - OOLONG_SWAP
            - OPEN_OCEAN
            - ORCA_SWAP
            - OSMOSIS_SWAP
            - OCTO_SWAP
            - PANCAKE_SWAP
            - PANCAKE_SWAP_V3
            - PANGOLIN
            - PARA_SWAP
            - PEGASYS
            - PHOTON_SWAP
            - POLYDEX
            - PITEAS
            - QUICK_SWAP
            - QUICK_SWAP_V3
            - PULSEX_V1
            - PULSEX_V2
            - RANGO
            - RAYDIUM
            - REF_FINANCE
            - REN_BTC
            - ROUTER_SWAP
            - RUBIC_STELLAR_API
            - SABER_STABLE_SWAP
            - SAROS_SWAP
            - SERUM
            - SHIBA_SWAP
            - SILK_SWAP
            - SMOOTHY
            - SOLANA
            - SOLAR_BEAM
            - SPACEFI_SWAP
            - SPIRIT_SWAP
            - SPL_TOKEN_SWAP
            - SPOOKY_SWAP
            - SOUL_SWAP
            - STELLA_SWAP
            - STONFI
            - SUN_SWAP
            - SURFDEX
            - SUSHI_SWAP
            - SYNAPSE
            - SYNC_SWAP
            - SPARK_DEX
            - SPARK_DEX_V3
            - SQUIDROUTER
            - SYMBIOSIS_SWAP
            - SOROSWAP
            - TONCO_DEX
            - TRADER
            - TRISOLARIS
            - IZUMI
            - UBE_SWAP
            - UNISWAP_V2
            - UNI_SWAP_V3
            - UNIZEN
            - VERSE
            - VIPER_SWAP
            - VOLTAGE_SWAP
            - VOOI
            - VVS_FINANCE
            - WAGYU_SWAP
            - WANNA_SWAP
            - WAULT_SWAP
            - WOO_FI
            - WRAPPED
            - WYND
            - WARPX_V2
            - WARPX_V3
            - XY_DEX
            - YUZU_SWAP
            - ZAPPY
            - ZIP_SWAP
            - ZRX
            - ZETA_SWAP
            - HYPERCAT
        foreignBlacklist:
          description: Foreign provider-calculation to exclude from calculation
          default:
            dflow: []
            lifi: []
            rango: []
            zerox: []
          allOf:
            - $ref: '#/components/schemas/ForeignBlacklistDto'
        timeout:
          type: number
          description: Calculation timeout in seconds
          example: 32
          default: 30
          minimum: 2
          maximum: 60
        enableTestnets:
          type: boolean
          description: Use testnets for calculation or not
          example: false
        referrer:
          type: object
          description: Referrer address
          example: rubic.exchange
          default: rubic.exchange
        enableChecks:
          type: object
          description: Enable allowance enough check
          default: false
        skipFeeProviders:
          type: object
          description: Skip providers with fee in route
          default: false
        showFailedRoutes:
          type: boolean
          description: Show failed routes in response or not
          example: false
          default: false
        showDangerousRoutes:
          type: boolean
          description: Show dangerous routes in response or not
          example: false
          default: false
        depositTradeParams:
          type: string
          default: all
          enum:
            - onlyDeposits
            - noDeposits
            - all
      required:
        - srcTokenAddress
        - dstTokenBlockchain
        - srcTokenBlockchain
        - srcTokenAmount
        - dstTokenAddress
        - receiver
        - referrer
    SwapRequestDto:
      type: object
      properties:
        srcTokenAddress:
          type: string
          description: Destination token blockchain
        dstTokenBlockchain:
          type: string
          description: Destination token blockchain
          default: POLYGON
          enum:
            - MUMBAI
            - BSCT
            - GOERLI
            - FUJI
            - SCROLL_SEPOLIA
            - ARTHERA
            - SEPOLIA
            - BERACHAIN_TESTNET
            - BLAST_TESTNET
            - HOLESKY
            - UNICHAIN_SEPOLIA_TESTNET
            - ETH
            - BSC
            - POLYGON
            - POLYGON_ZKEVM
            - AVALANCHE
            - MOONRIVER
            - FANTOM
            - HARMONY
            - ARBITRUM
            - AURORA
            - TELOS
            - OPTIMISM
            - CRONOS
            - OKX
            - GNOSIS
            - FUSE
            - MOONBEAM
            - CELO
            - BOBA
            - BOBA_BSC
            - ASTAR_EVM
            - KAVA
            - BITGERT
            - OASIS
            - METIS
            - DEFIKINGDOMS
            - KLAYTN
            - VELAS
            - SYSCOIN
            - ETHEREUM_CLASSIC
            - FLARE
            - IOTEX
            - THETA
            - ZK_SYNC
            - PULSECHAIN
            - LINEA
            - BASE
            - MANTLE
            - MANTA_PACIFIC
            - SCROLL
            - ZETACHAIN
            - BLAST
            - HORIZEN_EON
            - MERLIN
            - ROOTSTOCK
            - MODE
            - ZK_FAIR
            - ZK_LINK
            - XLAYER
            - TAIKO
            - SEI
            - CORE
            - BAHAMUT
            - BITLAYER
            - GRAVITY
            - FRAXTAL
            - BERACHAIN
            - SONEIUM
            - UNICHAIN
            - MORPH
            - HEMI
            - PLASMA
            - MONAD
            - HYPER_EVM
            - MEGAETH
            - BITCOIN_CASH
            - NEAR
            - ICP
            - CARDANO
            - AION
            - ALGORAND
            - APTOS
            - ARDOR
            - ARK
            - ASTAR
            - COSMOS
            - BAND_PROTOCOL
            - BITCOIN_DIAMOND
            - BSV
            - BITCOIN_GOLD
            - CASPER
            - DASH
            - DECRED
            - DIGI_BYTE
            - DIVI
            - DOGECOIN
            - POLKADOT
            - MULTIVERS_X
            - FIO_PROTOCOL
            - FIRO
            - FLOW
            - HEDERA
            - HELIUM
            - ICON
            - IOST
            - IOTA
            - KADENA
            - KOMODO
            - KUSAMA
            - LISK
            - LITECOIN
            - TERRA
            - TERRA_CLASSIC
            - MINA_PROTOCOL
            - NANO
            - NEO
            - OSMOSIS
            - PIVX
            - POLYX
            - QTUM
            - THOR_CHAIN
            - RAVENCOIN
            - SIA
            - SECRET
            - STEEM
            - STRATIS
            - STACKS
            - SOLAR
            - VE_CHAIN
            - WAVES
            - WAX
            - DX_CHAIN
            - E_CASH
            - NEM
            - STELLAR
            - MONERO
            - RIPPLE
            - TEZOS
            - VERGE
            - SYMBOL
            - ZCASH
            - HORIZEN
            - ZILLIQA
            - KAVA_COSMOS
            - FILECOIN
            - EOS
            - ONTOLOGY
            - XDC
            - STARKNET
            - TON
            - SOLANA
            - BITCOIN
            - TRON
            - SUI
        srcTokenBlockchain:
          type: string
          description: Source token blockchain
          default: ETH
          enum:
            - MUMBAI
            - BSCT
            - GOERLI
            - FUJI
            - SCROLL_SEPOLIA
            - ARTHERA
            - SEPOLIA
            - BERACHAIN_TESTNET
            - BLAST_TESTNET
            - HOLESKY
            - UNICHAIN_SEPOLIA_TESTNET
            - ETH
            - BSC
            - POLYGON
            - POLYGON_ZKEVM
            - AVALANCHE
            - MOONRIVER
            - FANTOM
            - HARMONY
            - ARBITRUM
            - AURORA
            - TELOS
            - OPTIMISM
            - CRONOS
            - OKX
            - GNOSIS
            - FUSE
            - MOONBEAM
            - CELO
            - BOBA
            - BOBA_BSC
            - ASTAR_EVM
            - KAVA
            - BITGERT
            - OASIS
            - METIS
            - DEFIKINGDOMS
            - KLAYTN
            - VELAS
            - SYSCOIN
            - ETHEREUM_CLASSIC
            - FLARE
            - IOTEX
            - THETA
            - ZK_SYNC
            - PULSECHAIN
            - LINEA
            - BASE
            - MANTLE
            - MANTA_PACIFIC
            - SCROLL
            - ZETACHAIN
            - BLAST
            - HORIZEN_EON
            - MERLIN
            - ROOTSTOCK
            - MODE
            - ZK_FAIR
            - ZK_LINK
            - XLAYER
            - TAIKO
            - SEI
            - CORE
            - BAHAMUT
            - BITLAYER
            - GRAVITY
            - FRAXTAL
            - BERACHAIN
            - SONEIUM
            - UNICHAIN
            - MORPH
            - HEMI
            - PLASMA
            - MONAD
            - HYPER_EVM
            - MEGAETH
            - BITCOIN_CASH
            - NEAR
            - ICP
            - CARDANO
            - AION
            - ALGORAND
            - APTOS
            - ARDOR
            - ARK
            - ASTAR
            - COSMOS
            - BAND_PROTOCOL
            - BITCOIN_DIAMOND
            - BSV
            - BITCOIN_GOLD
            - CASPER
            - DASH
            - DECRED
            - DIGI_BYTE
            - DIVI
            - DOGECOIN
            - POLKADOT
            - MULTIVERS_X
            - FIO_PROTOCOL
            - FIRO
            - FLOW
            - HEDERA
            - HELIUM
            - ICON
            - IOST
            - IOTA
            - KADENA
            - KOMODO
            - KUSAMA
            - LISK
            - LITECOIN
            - TERRA
            - TERRA_CLASSIC
            - MINA_PROTOCOL
            - NANO
            - NEO
            - OSMOSIS
            - PIVX
            - POLYX
            - QTUM
            - THOR_CHAIN
            - RAVENCOIN
            - SIA
            - SECRET
            - STEEM
            - STRATIS
            - STACKS
            - SOLAR
            - VE_CHAIN
            - WAVES
            - WAX
            - DX_CHAIN
            - E_CASH
            - NEM
            - STELLAR
            - MONERO
            - RIPPLE
            - TEZOS
            - VERGE
            - SYMBOL
            - ZCASH
            - HORIZEN
            - ZILLIQA
            - KAVA_COSMOS
            - FILECOIN
            - EOS
            - ONTOLOGY
            - XDC
            - STARKNET
            - TON
            - SOLANA
            - BITCOIN
            - TRON
            - SUI
        srcTokenAmount:
          type: string
          description: Source token amount with decimals
          example: '1.05'
        dstTokenAddress:
          type: string
          description: Destination token address
          example: '0x0000000000000000000000000000000000000000'
        nativeBlacklist:
          description: Native provider-calculation to exclude from calculation
          default: []
          type: array
          items:
            type: string
        id:
          type: string
          description: Id of the calculated trade
        enableChecks:
          type: object
          description: Enable possible gas and wallet errors checks
          default: true
        fromAddress:
          type: string
          description: Wallet address to send funds from
        receiver:
          type: string
          description: Wallet address to send tokens to on the destination blockchain
        signature:
          type: string
          description: Signature to auth wallet
        publicKey:
          type: string
          description: Public key of bitcoin wallet address
        refundAddress:
          type: string
          description: Address for refunds in src chain in case of reverted deposit trades
        integratorAddress:
          type: string
          description: Integrator address to set fees
        slippage:
          type: number
          description: Slippage tolerance in percents for trade
          example: 0.02
          maximum: 0.5
        preferredProvider:
          type: string
          description: Preferred provider for calculation
          enum:
            - symbiosis
            - lifi
            - dln
            - bridgers
            - multichain
            - xy
            - celer_bridge
            - changenow
            - stargate_v2
            - arbitrum
            - squidrouter
            - scroll_bridge
            - taiko_bridge
            - rango
            - pulsechain_bridge
            - orbiter_bridge
            - orbiter_bridge_v2
            - owl_to_bridge
            - layerzero
            - archon_bridge
            - meson
            - eddy_bridge
            - router
            - retro_bridge
            - across
            - unizen
            - simple_swap
            - changelly
            - tele_swap
            - wanchain_bridge
            - relay
            - xflows
            - wormhole
            - exolix
            - near_intents
            - usdt_zero_bridge
            - houdini
            - quickex
            - rubic_stellar_api
            - 10K_SWAP
            - AERODROME
            - ACRYPTOS
            - ALDRIN_EXCHANGE
            - ALGEBRA
            - ALGEBRA_INTEGRAL
            - ANNEX
            - APE_SWAP
            - ARTH_SWAP
            - ASTRO_SWAP
            - ASCENT
            - AURORA_SWAP
            - AVNU
            - AETHON_SWAP
            - ATLANTIS
            - AQUARIUS
            - BABY_SWAP
            - BALANCER
            - BASE_SWAP
            - BEAM_SWAP
            - BI_SWAP
            - BRIDGERS
            - BLAZE_SWAP
            - BULBA_SWAP
            - CAMELOT
            - CETUS
            - CHERRY_SWAP
            - CLAIM_SWAP
            - CLEARSWAP
            - COFFEE_SWAP
            - CREMA_FINANCE
            - CRO_SWAP
            - CRONA_SWAP
            - CROPPER_FINANCE
            - CROW_FI
            - CRO_DEX
            - CURVE
            - CLOBER
            - DEDUST
            - DEFI_PLAZA
            - DEFI_SWAP
            - DFLOW
            - DFYN
            - DLN
            - DODO
            - DRAGON_SWAP
            - DYSTOPIA
            - ECHO_DEX
            - EDDY_FINANCE
            - ELK
            - ENOSYS
            - ENOSYS_V3
            - FENIX_V2
            - FENIX_V3
            - FINKUJIRA
            - FUSIONX
            - FRAX_SWAP_V2
            - HONEY_SWAP
            - HORIZONDEX
            - JET_SWAP
            - JOE
            - JUPITER
            - JUPITER_SWAP
            - J_SWAP
            - KIM
            - KODIAK
            - KUJATA
            - KYBER_SWAP
            - KYO_FINANCE
            - LUA_SWAP
            - LIFI
            - MACARON
            - MAVERICK
            - MDEX
            - MERLIN_SWAP
            - MESH_SWAP
            - MM_FINANCE
            - MOJITO_SWAP
            - MUTE_SWAP
            - NET_SWAP
            - NATIVE_ROUTER
            - ODOS
            - OKC_SWAP
            - OKU_SWAP
            - ONE_INCH
            - ONE_MOON
            - ONE_SOL
            - OMNIDEX
            - OOLONG_SWAP
            - OPEN_OCEAN
            - ORCA_SWAP
            - OSMOSIS_SWAP
            - OCTO_SWAP
            - PANCAKE_SWAP
            - PANCAKE_SWAP_V3
            - PANGOLIN
            - PARA_SWAP
            - PEGASYS
            - PHOTON_SWAP
            - POLYDEX
            - PITEAS
            - QUICK_SWAP
            - QUICK_SWAP_V3
            - PULSEX_V1
            - PULSEX_V2
            - RANGO
            - RAYDIUM
            - REF_FINANCE
            - REN_BTC
            - ROUTER_SWAP
            - RUBIC_STELLAR_API
            - SABER_STABLE_SWAP
            - SAROS_SWAP
            - SERUM
            - SHIBA_SWAP
            - SILK_SWAP
            - SMOOTHY
            - SOLANA
            - SOLAR_BEAM
            - SPACEFI_SWAP
            - SPIRIT_SWAP
            - SPL_TOKEN_SWAP
            - SPOOKY_SWAP
            - SOUL_SWAP
            - STELLA_SWAP
            - STONFI
            - SUN_SWAP
            - SURFDEX
            - SUSHI_SWAP
            - SYNAPSE
            - SYNC_SWAP
            - SPARK_DEX
            - SPARK_DEX_V3
            - SQUIDROUTER
            - SYMBIOSIS_SWAP
            - SOROSWAP
            - TONCO_DEX
            - TRADER
            - TRISOLARIS
            - IZUMI
            - UBE_SWAP
            - UNISWAP_V2
            - UNI_SWAP_V3
            - UNIZEN
            - VERSE
            - VIPER_SWAP
            - VOLTAGE_SWAP
            - VOOI
            - VVS_FINANCE
            - WAGYU_SWAP
            - WANNA_SWAP
            - WAULT_SWAP
            - WOO_FI
            - WRAPPED
            - WYND
            - WARPX_V2
            - WARPX_V3
            - XY_DEX
            - YUZU_SWAP
            - ZAPPY
            - ZIP_SWAP
            - ZRX
            - ZETA_SWAP
            - HYPERCAT
        foreignBlacklist:
          description: Foreign provider-calculation to exclude from calculation
          default:
            dflow: []
            lifi: []
            rango: []
            zerox: []
          allOf:
            - $ref: '#/components/schemas/ForeignBlacklistDto'
        timeout:
          type: number
          description: Calculation timeout in seconds
          example: 32
          default: 30
          minimum: 2
          maximum: 60
        enableTestnets:
          type: boolean
          description: Use testnets for calculation or not
          example: false
        referrer:
          type: object
          description: Referrer address
          example: rubic.exchange
          default: rubic.exchange
        skipFeeProviders:
          type: object
          description: Skip providers with fee in route
          default: false
        showFailedRoutes:
          type: boolean
          description: Show failed routes in response or not
          example: false
          default: false
        showDangerousRoutes:
          type: boolean
          description: Show dangerous routes in response or not
          example: false
          default: false
        depositTradeParams:
          type: string
          default: all
          enum:
            - onlyDeposits
            - noDeposits
            - all
      required:
        - srcTokenAddress
        - dstTokenBlockchain
        - srcTokenBlockchain
        - srcTokenAmount
        - dstTokenAddress
        - id
        - fromAddress
        - receiver
        - referrer
    UniqueInfoDto:
      type: object
      properties:
        changenowId:
          type: string
        changellyId:
          type: string
        simpleSwapId:
          type: string
        retroBridgeId:
          type: string
        squidrouterRequestId:
          type: string
        rangoRequestId:
          type: string
        retrobridgeId:
          type: string
        relayId:
          type: string
        exolixId:
          type: string
        quickexId:
          type: string
        acrossId:
          type: string
        nearIntentsId:
          type: string
        houdiniId:
          type: string
        clearswapId:
          type: string
    SwapResponseDto:
      type: object
      properties:
        quote:
          $ref: '#/components/schemas/SwapRequestDto'
        estimate:
          $ref: '#/components/schemas/EstimatesDto'
        fees:
          $ref: '#/components/schemas/FeesDto'
        transaction:
          $ref: '#/components/schemas/TransactionDto'
        uniqueInfo:
          $ref: '#/components/schemas/UniqueInfoDto'
        warnings:
          description: Specific info about quote params provide
          type: array
          items:
            $ref: '#/components/schemas/ErrorDto'
        routing:
          type: array
          items:
            $ref: '#/components/schemas/RoutingDto'
        providerType:
          type: object
        swapType:
          type: object
        useRubicContract:
          type: boolean
      required:
        - quote
        - estimate
        - fees
        - transaction
        - warnings
        - routing
        - providerType
        - swapType
        - useRubicContract
    SwapDepositRequestDto:
      type: object
      properties:
        srcTokenAddress:
          type: string
          description: Destination token blockchain
        dstTokenBlockchain:
          type: string
          description: Destination token blockchain
          default: POLYGON
          enum:
            - MUMBAI
            - BSCT
            - GOERLI
            - FUJI
            - SCROLL_SEPOLIA
            - ARTHERA
            - SEPOLIA
            - BERACHAIN_TESTNET
            - BLAST_TESTNET
            - HOLESKY
            - UNICHAIN_SEPOLIA_TESTNET
            - ETH
            - BSC
            - POLYGON
            - POLYGON_ZKEVM
            - AVALANCHE
            - MOONRIVER
            - FANTOM
            - HARMONY
            - ARBITRUM
            - AURORA
            - TELOS
            - OPTIMISM
            - CRONOS
            - OKX
            - GNOSIS
            - FUSE
            - MOONBEAM
            - CELO
            - BOBA
            - BOBA_BSC
            - ASTAR_EVM
            - KAVA
            - BITGERT
            - OASIS
            - METIS
            - DEFIKINGDOMS
            - KLAYTN
            - VELAS
            - SYSCOIN
            - ETHEREUM_CLASSIC
            - FLARE
            - IOTEX
            - THETA
            - ZK_SYNC
            - PULSECHAIN
            - LINEA
            - BASE
            - MANTLE
            - MANTA_PACIFIC
            - SCROLL
            - ZETACHAIN
            - BLAST
            - HORIZEN_EON
            - MERLIN
            - ROOTSTOCK
            - MODE
            - ZK_FAIR
            - ZK_LINK
            - XLAYER
            - TAIKO
            - SEI
            - CORE
            - BAHAMUT
            - BITLAYER
            - GRAVITY
            - FRAXTAL
            - BERACHAIN
            - SONEIUM
            - UNICHAIN
            - MORPH
            - HEMI
            - PLASMA
            - MONAD
            - HYPER_EVM
            - MEGAETH
            - BITCOIN_CASH
            - NEAR
            - ICP
            - CARDANO
            - AION
            - ALGORAND
            - APTOS
            - ARDOR
            - ARK
            - ASTAR
            - COSMOS
            - BAND_PROTOCOL
            - BITCOIN_DIAMOND
            - BSV
            - BITCOIN_GOLD
            - CASPER
            - DASH
            - DECRED
            - DIGI_BYTE
            - DIVI
            - DOGECOIN
            - POLKADOT
            - MULTIVERS_X
            - FIO_PROTOCOL
            - FIRO
            - FLOW
            - HEDERA
            - HELIUM
            - ICON
            - IOST
            - IOTA
            - KADENA
            - KOMODO
            - KUSAMA
            - LISK
            - LITECOIN
            - TERRA
            - TERRA_CLASSIC
            - MINA_PROTOCOL
            - NANO
            - NEO
            - OSMOSIS
            - PIVX
            - POLYX
            - QTUM
            - THOR_CHAIN
            - RAVENCOIN
            - SIA
            - SECRET
            - STEEM
            - STRATIS
            - STACKS
            - SOLAR
            - VE_CHAIN
            - WAVES
            - WAX
            - DX_CHAIN
            - E_CASH
            - NEM
            - STELLAR
            - MONERO
            - RIPPLE
            - TEZOS
            - VERGE
            - SYMBOL
            - ZCASH
            - HORIZEN
            - ZILLIQA
            - KAVA_COSMOS
            - FILECOIN
            - EOS
            - ONTOLOGY
            - XDC
            - STARKNET
            - TON
            - SOLANA
            - BITCOIN
            - TRON
            - SUI
        srcTokenBlockchain:
          type: string
          description: Source token blockchain
          default: ETH
          enum:
            - MUMBAI
            - BSCT
            - GOERLI
            - FUJI
            - SCROLL_SEPOLIA
            - ARTHERA
            - SEPOLIA
            - BERACHAIN_TESTNET
            - BLAST_TESTNET
            - HOLESKY
            - UNICHAIN_SEPOLIA_TESTNET
            - ETH
            - BSC
            - POLYGON
            - POLYGON_ZKEVM
            - AVALANCHE
            - MOONRIVER
            - FANTOM
            - HARMONY
            - ARBITRUM
            - AURORA
            - TELOS
            - OPTIMISM
            - CRONOS
            - OKX
            - GNOSIS
            - FUSE
            - MOONBEAM
            - CELO
            - BOBA
            - BOBA_BSC
            - ASTAR_EVM
            - KAVA
            - BITGERT
            - OASIS
            - METIS
            - DEFIKINGDOMS
            - KLAYTN
            - VELAS
            - SYSCOIN
            - ETHEREUM_CLASSIC
            - FLARE
            - IOTEX
            - THETA
            - ZK_SYNC
            - PULSECHAIN
            - LINEA
            - BASE
            - MANTLE
            - MANTA_PACIFIC
            - SCROLL
            - ZETACHAIN
            - BLAST
            - HORIZEN_EON
            - MERLIN
            - ROOTSTOCK
            - MODE
            - ZK_FAIR
            - ZK_LINK
            - XLAYER
            - TAIKO
            - SEI
            - CORE
            - BAHAMUT
            - BITLAYER
            - GRAVITY
            - FRAXTAL
            - BERACHAIN
            - SONEIUM
            - UNICHAIN
            - MORPH
            - HEMI
            - PLASMA
            - MONAD
            - HYPER_EVM
            - MEGAETH
            - BITCOIN_CASH
            - NEAR
            - ICP
            - CARDANO
            - AION
            - ALGORAND
            - APTOS
            - ARDOR
            - ARK
            - ASTAR
            - COSMOS
            - BAND_PROTOCOL
            - BITCOIN_DIAMOND
            - BSV
            - BITCOIN_GOLD
            - CASPER
            - DASH
            - DECRED
            - DIGI_BYTE
            - DIVI
            - DOGECOIN
            - POLKADOT
            - MULTIVERS_X
            - FIO_PROTOCOL
            - FIRO
            - FLOW
            - HEDERA
            - HELIUM
            - ICON
            - IOST
            - IOTA
            - KADENA
            - KOMODO
            - KUSAMA
            - LISK
            - LITECOIN
            - TERRA
            - TERRA_CLASSIC
            - MINA_PROTOCOL
            - NANO
            - NEO
            - OSMOSIS
            - PIVX
            - POLYX
            - QTUM
            - THOR_CHAIN
            - RAVENCOIN
            - SIA
            - SECRET
            - STEEM
            - STRATIS
            - STACKS
            - SOLAR
            - VE_CHAIN
            - WAVES
            - WAX
            - DX_CHAIN
            - E_CASH
            - NEM
            - STELLAR
            - MONERO
            - RIPPLE
            - TEZOS
            - VERGE
            - SYMBOL
            - ZCASH
            - HORIZEN
            - ZILLIQA
            - KAVA_COSMOS
            - FILECOIN
            - EOS
            - ONTOLOGY
            - XDC
            - STARKNET
            - TON
            - SOLANA
            - BITCOIN
            - TRON
            - SUI
        srcTokenAmount:
          type: string
          description: Source token amount with decimals
          example: '1.05'
        dstTokenAddress:
          type: string
          description: Destination token address
          example: '0x0000000000000000000000000000000000000000'
        nativeBlacklist:
          description: Native provider-calculation to exclude from calculation
          default: []
          type: array
          items:
            type: string
        receiver:
          type: string
          description: Wallet address to send tokens to on the destination blockchain
          default: ''
        fromAddress:
          type: string
          description: Wallet address to send funds from
        integratorAddress:
          type: string
          description: Integrator address to set fees
        slippage:
          type: number
          description: Slippage tolerance in percents for trade
          example: 0.02
          maximum: 0.5
        preferredProvider:
          type: string
          description: Preferred provider for calculation
          enum:
            - symbiosis
            - lifi
            - dln
            - bridgers
            - multichain
            - xy
            - celer_bridge
            - changenow
            - stargate_v2
            - arbitrum
            - squidrouter
            - scroll_bridge
            - taiko_bridge
            - rango
            - pulsechain_bridge
            - orbiter_bridge
            - orbiter_bridge_v2
            - owl_to_bridge
            - layerzero
            - archon_bridge
            - meson
            - eddy_bridge
            - router
            - retro_bridge
            - across
            - unizen
            - simple_swap
            - changelly
            - tele_swap
            - wanchain_bridge
            - relay
            - xflows
            - wormhole
            - exolix
            - near_intents
            - usdt_zero_bridge
            - houdini
            - quickex
            - rubic_stellar_api
            - 10K_SWAP
            - AERODROME
            - ACRYPTOS
            - ALDRIN_EXCHANGE
            - ALGEBRA
            - ALGEBRA_INTEGRAL
            - ANNEX
            - APE_SWAP
            - ARTH_SWAP
            - ASTRO_SWAP
            - ASCENT
            - AURORA_SWAP
            - AVNU
            - AETHON_SWAP
            - ATLANTIS
            - AQUARIUS
            - BABY_SWAP
            - BALANCER
            - BASE_SWAP
            - BEAM_SWAP
            - BI_SWAP
            - BRIDGERS
            - BLAZE_SWAP
            - BULBA_SWAP
            - CAMELOT
            - CETUS
            - CHERRY_SWAP
            - CLAIM_SWAP
            - CLEARSWAP
            - COFFEE_SWAP
            - CREMA_FINANCE
            - CRO_SWAP
            - CRONA_SWAP
            - CROPPER_FINANCE
            - CROW_FI
            - CRO_DEX
            - CURVE
            - CLOBER
            - DEDUST
            - DEFI_PLAZA
            - DEFI_SWAP
            - DFLOW
            - DFYN
            - DLN
            - DODO
            - DRAGON_SWAP
            - DYSTOPIA
            - ECHO_DEX
            - EDDY_FINANCE
            - ELK
            - ENOSYS
            - ENOSYS_V3
            - FENIX_V2
            - FENIX_V3
            - FINKUJIRA
            - FUSIONX
            - FRAX_SWAP_V2
            - HONEY_SWAP
            - HORIZONDEX
            - JET_SWAP
            - JOE
            - JUPITER
            - JUPITER_SWAP
            - J_SWAP
            - KIM
            - KODIAK
            - KUJATA
            - KYBER_SWAP
            - KYO_FINANCE
            - LUA_SWAP
            - LIFI
            - MACARON
            - MAVERICK
            - MDEX
            - MERLIN_SWAP
            - MESH_SWAP
            - MM_FINANCE
            - MOJITO_SWAP
            - MUTE_SWAP
            - NET_SWAP
            - NATIVE_ROUTER
            - ODOS
            - OKC_SWAP
            - OKU_SWAP
            - ONE_INCH
            - ONE_MOON
            - ONE_SOL
            - OMNIDEX
            - OOLONG_SWAP
            - OPEN_OCEAN
            - ORCA_SWAP
            - OSMOSIS_SWAP
            - OCTO_SWAP
            - PANCAKE_SWAP
            - PANCAKE_SWAP_V3
            - PANGOLIN
            - PARA_SWAP
            - PEGASYS
            - PHOTON_SWAP
            - POLYDEX
            - PITEAS
            - QUICK_SWAP
            - QUICK_SWAP_V3
            - PULSEX_V1
            - PULSEX_V2
            - RANGO
            - RAYDIUM
            - REF_FINANCE
            - REN_BTC
            - ROUTER_SWAP
            - RUBIC_STELLAR_API
            - SABER_STABLE_SWAP
            - SAROS_SWAP
            - SERUM
            - SHIBA_SWAP
            - SILK_SWAP
            - SMOOTHY
            - SOLANA
            - SOLAR_BEAM
            - SPACEFI_SWAP
            - SPIRIT_SWAP
            - SPL_TOKEN_SWAP
            - SPOOKY_SWAP
            - SOUL_SWAP
            - STELLA_SWAP
            - STONFI
            - SUN_SWAP
            - SURFDEX
            - SUSHI_SWAP
            - SYNAPSE
            - SYNC_SWAP
            - SPARK_DEX
            - SPARK_DEX_V3
            - SQUIDROUTER
            - SYMBIOSIS_SWAP
            - SOROSWAP
            - TONCO_DEX
            - TRADER
            - TRISOLARIS
            - IZUMI
            - UBE_SWAP
            - UNISWAP_V2
            - UNI_SWAP_V3
            - UNIZEN
            - VERSE
            - VIPER_SWAP
            - VOLTAGE_SWAP
            - VOOI
            - VVS_FINANCE
            - WAGYU_SWAP
            - WANNA_SWAP
            - WAULT_SWAP
            - WOO_FI
            - WRAPPED
            - WYND
            - WARPX_V2
            - WARPX_V3
            - XY_DEX
            - YUZU_SWAP
            - ZAPPY
            - ZIP_SWAP
            - ZRX
            - ZETA_SWAP
            - HYPERCAT
        foreignBlacklist:
          description: Foreign provider-calculation to exclude from calculation
          default:
            dflow: []
            lifi: []
            rango: []
            zerox: []
          allOf:
            - $ref: '#/components/schemas/ForeignBlacklistDto'
        timeout:
          type: number
          description: Calculation timeout in seconds
          example: 32
          default: 30
          minimum: 2
          maximum: 60
        enableTestnets:
          type: boolean
          description: Use testnets for calculation or not
          example: false
        referrer:
          type: object
          description: Referrer address
          example: rubic.exchange
          default: rubic.exchange
        enableChecks:
          type: object
          description: Enable possible gas and wallet errors checks
          default: true
        skipFeeProviders:
          type: object
          description: Skip providers with fee in route
          default: false
        showFailedRoutes:
          type: boolean
          description: Show failed routes in response or not
          example: false
          default: false
        showDangerousRoutes:
          type: boolean
          description: Show dangerous routes in response or not
          example: false
          default: false
        depositTradeParams:
          type: string
          default: all
          enum:
            - onlyDeposits
            - noDeposits
            - all
        id:
          type: string
          description: Id of the calculated trade
        signature:
          type: string
          description: Signature to auth wallet
        publicKey:
          type: string
          description: Public key of bitcoin wallet address
        refundAddress:
          type: string
          description: Address for refunds in src chain in case of reverted deposit trades
      required:
        - srcTokenAddress
        - dstTokenBlockchain
        - srcTokenBlockchain
        - srcTokenAmount
        - dstTokenAddress
        - receiver
        - referrer
        - id
    ApproveResponseDto:
      type: object
      properties:
        needApprove:
          type: boolean
          description: is approve needed
        transaction:
          description: >-
            Transaction body for approve call in web3, if approve is needed.
            Otherwise this field is undefined
          allOf:
            - $ref: '#/components/schemas/TransactionDto'
        message:
          type: string
          description: Meaning of response
      required:
        - needApprove
        - message
    AllowanceResponseDto:
      type: object
      properties:
        allowance:
          type: string
          description: allowance in wei amount
      required:
        - allowance
    ChainDto:
      type: object
      properties:
        name:
          type: object
          description: Chain name
        type:
          type: string
          description: Chain type
        id:
          type: number
          nullable: true
          description: Chain ID
        proxyAvailable:
          type: boolean
          description: Is proxy available
        testnet:
          type: boolean
          description: Is testnet
      required:
        - name
        - type
        - id
        - proxyAvailable
        - testnet
    ProviderChainDto:
      type: object
      properties:
        name:
          type: object
          description: Chain name
        proxyAvailable:
          type: boolean
          description: Is proxy available for trade
      required:
        - name
        - proxyAvailable
    CrossChainProviderDto:
      type: object
      properties:
        name:
          type: object
          description: Cross chain provider name
        chains:
          description: Chains supported by the provider
          type: array
          items:
            $ref: '#/components/schemas/ProviderChainDto'
      required:
        - name
        - chains
    OnChainProviderDto:
      type: object
      properties:
        name:
          type: object
          description: On chain provider name
        chains:
          description: Chains supported by the provider
          type: array
          items:
            $ref: '#/components/schemas/ProviderChainDto'
      required:
        - name
        - chains
    ProvidersDto:
      type: object
      properties:
        crossChain:
          description: Cross chain providers
          type: array
          items:
            $ref: '#/components/schemas/CrossChainProviderDto'
        onChain:
          description: On chain provides
          type: array
          items:
            $ref: '#/components/schemas/OnChainProviderDto'
      required:
        - crossChain
        - onChain
    StatusResponseDto:
      type: object
      properties:
        status:
          type: object
        destinationTxHash:
          type: string
          nullable: true
        destinationNetworkTitle:
          type: string
          nullable: true
        destinationNetworkChainId:
          type: number
          nullable: true
      required:
        - status
        - destinationTxHash
        - destinationNetworkTitle
        - destinationNetworkChainId
    TokenSecurityDto:
      type: object
      properties:
        has_info:
          type: boolean
        trust_list:
          type: boolean
        risky_security_items:
          type: number
        attention_security_items:
          type: number
        is_airdrop_scam:
          type: boolean
        fake_token:
          type: boolean
        buy_tax:
          type: string
          nullable: true
        sell_tax:
          type: string
          nullable: true
      required:
        - has_info
        - trust_list
        - risky_security_items
        - attention_security_items
        - is_airdrop_scam
        - fake_token
        - buy_tax
        - sell_tax
    TokenBackDto:
      type: object
      properties:
        address:
          type: string
          description: Token address
        name:
          type: string
          description: Token name
        symbol:
          type: string
          description: Token symbol
        blockchainNetwork:
          type: object
          description: Token network
        decimals:
          type: number
          description: Token decimals
        image:
          type: string
          description: Token image
        rank:
          type: number
          description: Token rank
        type:
          type: object
          description: Token type
        usedInIframe:
          type: boolean
          description: Used in iFrame or nor
        coingeckoId:
          type: string
          description: Coingecko ID
        usdPrice:
          type: number
          description: Pricde in USD dollars
        coingecko_rank:
          type: number
          description: Coingecko rank
        token_security:
          nullable: true
          description: Token security data
          allOf:
            - $ref: '#/components/schemas/TokenSecurityDto'
      required:
        - address
        - name
        - symbol
        - blockchainNetwork
        - decimals
        - image
        - rank
        - type
        - usedInIframe
        - coingeckoId
        - usdPrice
        - coingecko_rank
        - token_security
    TokensResponseDto:
      type: object
      properties:
        count:
          type: number
          description: Amount of elements
        next:
          type: string
          description: Link on next page request
        previous:
          type: string
          description: Link on prev page request
        results:
          description: Tokens result
          type: array
          items:
            $ref: '#/components/schemas/TokenBackDto'
      required:
        - count
        - next
        - previous
        - results
    RelayRequestDto:
      type: object
      properties:
        data:
          type: string
          description: Base58 signed transaction
        id:
          type: string
          description: Trade ID
      required:
        - data
        - id
    RelayResponseDto:
      type: object
      properties:
        signature:
          type: string
      required:
        - signature
