---
title: "GetDexQuote returns a cross-chain route quote from the configured DEX provider"
method: POST
path: "/market/v1/dex/quote"
tags: ["MarketQueryService"]
---

# GetDexQuote returns a cross-chain route quote from the configured DEX provider

`POST /market/v1/dex/quote`

Quote-only. Does not execute the swap. Response includes the raw route
data needed by the client (or a follow-up call) to actually execute it

## Request body

- DexGetDexQuoteRequest
  - `allowMultiTx` boolean
  - `assetIn` DexDexAssetAmount, required
    - `amount` string, required
    - `chainId` string, required
    - `denom` string, required
  - `assetOut` DexDexAsset, required
    - `chainId` string, required
    - `denom` string, required
  - `senderAddress` string — sender_address is the wallet address of the user initiating the swap.

## Response `200`

A successful response.

- DexGetDexQuoteResponse
  - `affiliateAddress` string — affiliate_address is the address that receives the affiliate fee for this route.
  - `affiliateFeeBps` integer — affiliate_fee_bps is the affiliate fee in basis points applied to this route (e.g. 100 = 1.00%).
  - `approvalAddress` string — approval_address is the spender (LiFi router) that needs ERC-20 allowance.
  - `approvalAmount` string — approval_amount is the minimum token amount (base units) that must be approved.
  - `approvalToken` string — approval_token is the ERC-20 contract address that must grant allowance before the swap. Empty for native-token swaps (no approval needed).
  - `assetIn` DexDexAssetAmount
    - `amount` string, required
    - `chainId` string, required
    - `denom` string, required
  - `assetOut` DexDexAssetAmount
    - `amount` string, required
    - `chainId` string, required
    - `denom` string, required
  - `doesSwap` boolean
  - `estimatedAmountOut` string
  - `evmTx` string — evm_tx is the RLP-serialized unsigned EIP-1559 transaction (hex, 0x-prefixed). Only present when provider is "lifi". Parse with viem's parseTransaction, then pass the extracted fields to sendTransaction (nonce is a placeholder — omit it).
  - `provider` string — provider identifies which DEX routing provider fulfilled this quote ("skip" or "lifi").
  - `routeData` object — route_data is the full Skip route object required for swap execution. Contains the complete route including operations, required chain addresses, and all fields needed to call Skip's executeRoute without a separate route() call.
  - `swapPriceImpactPercent` string
  - `txsRequired` integer
  - `usdAmountIn` string
  - `usdAmountOut` string

## Other responses

- `default` — An unexpected error response. `details[0]` is always an AppError, see #/components/schemas/AppError

---

[API](https://skmtc.net/kiiglobal/apis/kiichain-pay-backend.md) · [All operations](https://skmtc.net/kiiglobal/apis/kiichain-pay-backend/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/kiiglobal/kiichain-pay-backend/revisions/8951249f5b63/schema)
