---
title: "Get Swap Quote"
method: POST
path: "/v1/wallets/{wallet_id}/swap/quote"
tags: ["Swaps"]
---

# Get Swap Quote

`POST /v1/wallets/{wallet_id}/swap/quote`

Get a price quote for swapping tokens within a wallet.

## Path parameters

- `wallet_id` string, required — ID of the wallet.

## Headers

- `privy-app-id` string, required — ID of your Privy app.
- `privy-authorization-signature` string — Request authorization signature. If multiple signatures are required, they should be comma separated.
- `privy-request-expiry` string — Request expiry. Value is a Unix timestamp in milliseconds representing the deadline by which the request must be processed.

## Request body

- SwapQuoteRequestBody — Input for requesting a token swap quote.
  - `amount_type` 'exact_input' | 'exact_output' — Whether the amount refers to the input token (exact_input) or output token (exact_output).
  - `base_amount` string, required — Amount in base units (e.g., wei for ETH). Must be a non-negative integer string.
  - `destination` SwapQuoteDestination, required — The output side of a swap quote request.
    - `asset_address` string, required — Token contract address to buy, or "native" for the chain's native token.
    - `caip2` string — CAIP-2 chain identifier for the destination. Defaults to source chain if omitted. Will result in a cross-chain swap if source and destination chains differ.
    - `destination_address` string — Address to receive the output tokens. Defaults to the swapping wallet address. Required when swapping between chains with different address types (e.g. EVM to Solana).
  - `fee_configuration` object — Optional fee configuration for the swap. If omitted, cross-chain swaps will not charge additional fees.
    - `type` 'total_fee_bps', required — Discriminator: total fee specified in BPS.
    - `value` integer, required — Total fee in basis points (1 bps = 0.01%).
  - `slippage_bps` integer — Maximum slippage tolerance in basis points (e.g., 50 for 0.5%). If omitted, auto-slippage is used.
  - `source` SwapSource, required — The input side of a swap request, including token and chain.
    - `asset_address` string, required — Token contract address to sell, or "native" for the chain's native token.
    - `caip2` string, required — CAIP-2 chain identifier (e.g., "eip155:1").

## Response `200`

Swap quote retrieved successfully.

- SwapQuoteResponse — Pricing data for a token swap.
  - `caip2` string, required — Chain identifier.
  - `destination_caip2` string — Destination chain CAIP-2 identifier for cross-chain swaps. Only present for cross-chain swaps.
  - `est_output_amount` string, required — Estimated amount of output token in base units.
  - `estimated_fees` FeeLineItem[] — Estimated fees for the swap. Only present for cross-chain swaps.
    - union — An individual fee assessed on a transfer.
      - object — Estimated fee paid to the relayer.
        - `amount` string, required — Amount in USD (in decimals).
        - `recipient` union
          - string
          - string
          - string — Tron address: base58check-encoded, starting with T, 34 characters.
        - `type` 'relayer', required
      - object — Estimated fee paid to Privy.
        - `amount` string, required — Amount in USD (in decimals).
        - `recipient` union
          - string
          - string
          - string — Tron address: base58check-encoded, starting with T, 34 characters.
        - `type` 'privy', required
      - object — Estimated fee paid to the developer.
        - `amount` string, required — Amount in USD (in decimals).
        - `recipient` union
          - string
          - string
          - string — Tron address: base58check-encoded, starting with T, 34 characters.
        - `type` 'developer', required
  - `estimated_gas` object — Estimated gas cost with full token metadata. Only present for cross-chain swaps.
    - `amount` string, required — Gas cost in the gas token as a human-readable decimal string (e.g. "0.0001").
    - `base_amount` string, required — Gas cost in the gas token's base units (e.g. wei).
    - `gas_asset` string, required — Gas token symbol (e.g. "ETH", "USDC").
  - `expires_at` number — Quote expiry as Unix timestamp (seconds). Only present for cross-chain quotes.
  - `gas_estimate` string, required — Estimated gas cost in base units of the native token. @deprecated For cross-chain swaps, use estimated_gas instead.
  - `input_amount` string, required — Amount of input token in base units.
  - `input_token` string, required — Token address being sold.
  - `minimum_output_amount` string, required — Minimum output amount accounting for slippage, in base units.
  - `output_token` string, required — Token address being bought.

---

[API](https://skmtc.net/privy-io/apis/privy-api.md) · [All operations](https://skmtc.net/privy-io/apis/privy-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/privy-io/privy-api/revisions/bb2eb34156cc/schema)
