> ## Documentation Index
> Fetch the complete documentation index at: https://docs.turnkey.com/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Turnkey is wallet infrastructure: create and manage crypto wallets, sign transactions, and enforce policy-based access controls. Best-fit uses: embedded consumer wallets (email/passkey/social auth, no seed phrases), automated onchain operations with server-side wallets, AI agent wallets with policy-scoped signing, enterprise key management, and verifiable off-chain workloads on Turnkey Verifiable Cloud (TVC).
> Every API call is a JSON POST to https://api.turnkey.com signed with a P-256 API key; create an organization and key self-serve at https://app.turnkey.com.
> Key Turnkey developer resources: API reference (https://docs.turnkey.com/api-reference/overview/intro.md), OpenAPI spec (https://docs.turnkey.com/public_api.swagger.json), authentication (https://docs.turnkey.com/features/authentication/overview.md), webhooks (https://docs.turnkey.com/features/webhooks/overview.md), MCP server for docs search (https://docs.turnkey.com/mcp), skill for building with Turnkey (https://docs.turnkey.com/skill.md), agent skills for operating an organization (https://docs.turnkey.com/get-started/ai-skills.md), CLI (https://docs.turnkey.com/sdks/cli.md), SDK reference (https://docs.turnkey.com/sdks/introduction.md), full docs content (https://docs.turnkey.com/llms-full.txt).

# Get indicative swap quote

> Preview the provider's current price for a swap without creating an activity. The quote is not binding and has no quote ID: a market swap executed later fetches its own quote, so its price can differ.

POST

/

public

/

v1

/

query

/

get\_indicative\_swap\_quote

### Authorizations

> [tab] API Key
>
> **X-Stamp** `string` *required*
>
> Cryptographically signed (stamped) request to be passed in as a header. For more info, see [here](https://docs.turnkey.com/developer-reference/api-overview/stamps.md).

> [tab] WebAuthn (Passkey)
>
> **X-Stamp-WebAuthn** `string` *required*
>
> Cryptographically signed (stamped) request to be passed in as a header. For more info, see [here](https://docs.turnkey.com/developer-reference/api-overview/stamps.md).

### Body

**organizationId** `string` *required*

Unique identifier for a given Organization.

**signWith** `string` *required*

Wallet account address that would send the input asset. It must belong to the organization.

**inputToken** `string` *required*

CAIP-19 asset ID for the input asset.

**outputToken** `string` *required*

CAIP-19 asset ID for the output asset.

**inputAmount** `string` *required*

Exact base-unit amount of the input asset.

**slippageBps** `string`

Maximum allowed slippage in basis points, at most 5000. When omitted, the provider chooses the slippage.

**destinationAddress** `string`

Raw public address that would receive the output asset. Required for cross-protocol swaps and rejected otherwise.

**feeSponsorship** `boolean`

Preview the price with Turnkey paying the provider fees. Requires the FEATURE\_NAME\_SWAP\_FEE\_SPONSORSHIP organization feature. Defaults to false.

**fixedRate** `boolean`

Preview a 1:1 conversion before fees between supported stablecoins. Requires the FEATURE\_NAME\_SWAP\_FIXED\_RATE organization feature. Defaults to false.

### Response

A successful response returns the following fields:

**provider** `string` *required*

Swap provider that produced this quote.

**outputAmount** `string` *required*

Estimated base-unit amount of the output asset.

**minOutputAmount** `string` *required*

Minimum base-unit amount of the output asset after slippage.

**slippageBps** `string`

Slippage tolerance in basis points the provider applied.

**clientFeeBps** `string` *required*

Client app fee in basis points included in this quote. "0" when no client fee applies.

**estimatedTimeSeconds** `string`

Provider's estimated time to complete the swap, in seconds.

**feeSponsorship** `boolean` *required*

Whether this quote has Turnkey paying the execution costs.

**fixedRate** `boolean` *required*

Whether this quote uses a 1:1 fixed rate.

**estimatedFixedRateAdjustmentUsd** `string`

Deprecated: use estimated\_charges.fixed\_rate\_adjustment\_usd. Estimated fixed-rate adjustment in USD from the customer's side: positive is a cost, negative an earning. Present only for fixed-rate quotes the provider priced.

**estimatedCharges** `object`

estimatedCharges field

**estimatedCharges details**

Navigate to header

estimatedCharges.
executionUsd

string

Swap Execution: the provider's execution costs Turnkey pays, including DEX fees and price impact, the provider's fixed cost, destination gas, and provider fees. Present when fee\_sponsorship is true.

Navigate to header

estimatedCharges.
turnkeyFeeUsd

string

Swap Turnkey Fee: Turnkey's fee for a fee-sponsored swap. Present when fee\_sponsorship is true.

Navigate to header

estimatedCharges.
fixedRateAdjustmentUsd

string

Swap Fixed Rate: the difference between the 1:1 rate and the market rate. Positive is a cost billed to you; negative is an earning credited against your transaction management charges at the end of the billing period. Present when fixed\_rate is true.

```bash title="cURL" theme={"system"}
curl --request POST \
  --url https://api.turnkey.com/public/v1/query/get_indicative_swap_quote \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --header "X-Stamp: <string> (see Authorizations)" \
  --data '{
    "organizationId": "<string>",
    "signWith": "<string>",
    "inputToken": "<string>",
    "outputToken": "<string>",
    "inputAmount": "<string>",
    "slippageBps": "<string>",
    "destinationAddress": "<string>",
    "feeSponsorship": "<boolean>",
    "fixedRate": "<boolean>"
}'
```

```javascript title="JavaScript" theme={"system"}
import { Turnkey } from "@turnkey/sdk-server";

const turnkeyClient = new Turnkey({
  apiBaseUrl: "https://api.turnkey.com",
  apiPublicKey: process.env.API_PUBLIC_KEY!,
  apiPrivateKey: process.env.API_PRIVATE_KEY!,
  defaultOrganizationId: process.env.ORGANIZATION_ID!,
});

const response = await turnkeyClient.apiClient().getIndicativeSwapQuote({
  organizationId: "<string> (Unique identifier for a given Organization.)",
  signWith: "<string> (Wallet account address that would send the input asset. It must belong to the organization.)",
  inputToken: "<string> (CAIP-19 asset ID for the input asset.)",
  outputToken: "<string> (CAIP-19 asset ID for the output asset.)",
  inputAmount: "<string> (Exact base-unit amount of the input asset.)",
  slippageBps: "<string> (Maximum allowed slippage in basis points, at most 5000. When omitted, the provider chooses the slippage.)",
  destinationAddress: "<string> (Raw public address that would receive the output asset. Required for cross-protocol swaps and rejected otherwise.)",
  feeSponsorship: true // Preview the price with Turnkey paying the provider fees. Requires the FEATURE_NAME_SWAP_FEE_SPONSORSHIP organization feature. Defaults to false.,
  fixedRate: true // Preview a 1:1 conversion before fees between supported stablecoins. Requires the FEATURE_NAME_SWAP_FIXED_RATE organization feature. Defaults to false.
});
```

```json 200 theme={"system"}
{
  "provider": "<string>",
  "outputAmount": "<string>",
  "minOutputAmount": "<string>",
  "slippageBps": "<string>",
  "clientFeeBps": "<string>",
  "estimatedTimeSeconds": "<string>",
  "feeSponsorship": "<boolean>",
  "fixedRate": "<boolean>",
  "estimatedFixedRateAdjustmentUsd": "<string>",
  "estimatedCharges": {
    "executionUsd": "<string>",
    "turnkeyFeeUsd": "<string>",
    "fixedRateAdjustmentUsd": "<string>"
  }
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.