Blockdaemon · Schema

_dex_swapwithapproval_Request

The request body for a /defi/v1/dex/swap-with-approval

BlockchainWeb3StakingValidatorCustodyMPCWalletsNodeRPCDeFiIndexerTokenizationInstitutionalCryptocurrencyEthereum

Properties

Name Type Description
dexId string The unique ID to specify the decentralized exchange (DEX) within a particular blockchain. Find more [here](https://docs.blockdaemon.com/docs/defi-api-supported-protocols#supported-dexs-protocols).
path array Ordered array of token contract addresses defining the swap route. Provide [tokenInAddress, tokenOutAddress] for a direct swap. Example (WETH→USDC on Ethereum): ['0xC02aaA39b223FE8D0A0e5C4F27eAD9083C7
amountIn string Amount of the input token to provide, specified in the token's smallest denomination (base units). Do not send human-readable decimal values. Examples: to swap 1 WETH (18 decimals), use "1000000000000
amountOutMin string Minimum acceptable output amount in the token's smallest denomination (base units). Provides slippage protection — the transaction reverts if the output falls below this value. Set to "0" to disable s
to string Blockchain address of the token recipient. For EVM chains, use a checksummed hex address (e.g., 0xABCDEF...). Output tokens are delivered to this address after the swap.
deadline string Transaction expiry time as a Unix timestamp in seconds (not milliseconds). The transaction will revert if not submitted before this time. Example: to set a 20-minute deadline, use current Unix timesta
from string Blockchain address of the token sender. For EVM chains, use a checksummed hex address (e.g., 0xABCDEF...). This address must hold sufficient balance of the input token and will sign the transaction.
gas string Maximum number of gas units to allocate for the transaction, as an integer string (e.g., '200000'). If omitted, gas is estimated automatically. Note: this is gas units, not wei or gwei.
gasPriority string Specifies the priority level for gas fees (e.g., 'low', 'medium', or 'high'), which influences the transaction speed and cost.
slippage string Maximum acceptable slippage as a percentage of the swap value. Valid range: 0 to 100 (e.g., 1 = up to 1% slippage). Defaults to 1. The transaction reverts if the output deviates more than this percent
enableFee boolean Flag to include a basis points fee transaction alongside the main transaction when set to true.
batchOption string Transaction batching standard to use. Supported values: 'EIP-5792' (wallet-level batching via wallet_sendCalls) or 'EIP-7702' (EOA code delegation via batcherContract). Requires batcherContract when u
batcherContract string The EOA address of the batcher that will be used to execute the transaction when using EIP-7702 batching. If not provided, the default batcher contract for the chain will be used.
simulate boolean When true, dry-runs the transaction batch via eth_simulateV1 and returns a simulate field with status and error on each transaction.
poolFees string Fee tier of the target liquidity pool in basis points (1 bp = 0.01%). Common values for Uniswap V3-style AMMs: 100 (0.01%), 500 (0.05%), 3000 (0.3%), 10000 (1%). If omitted, the pool yielding the high
View JSON Schema on GitHub

JSON Schema

blockdaemon-dex-swapwithapproval-request-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/blockdaemon/main/json-schema/blockdaemon-dex-swapwithapproval-request-schema.json",
  "title": "_dex_swapwithapproval_Request",
  "description": "The request body for a /defi/v1/dex/swap-with-approval",
  "x-generated": "2026-10-14",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/blockdaemon-defi-api-openapi.yml#/components/schemas/_dex_swapwithapproval_Request",
  "type": "object",
  "properties": {
    "dexId": {
      "type": "string",
      "description": "The unique ID to specify the decentralized exchange (DEX) within a particular blockchain. Find more [here](https://docs.blockdaemon.com/docs/defi-api-supported-protocols#supported-dexs-protocols).",
      "enum": [
        "1000",
        "1001",
        "1300",
        "1301",
        "1305",
        "1306",
        "1307",
        "1308",
        "1309",
        "1310",
        "1100",
        "1101",
        "1200",
        "1201",
        "2900",
        "2901",
        "2800",
        "2808",
        "2809",
        "1500",
        "1400",
        "1402",
        "2300",
        "2100",
        "2101",
        "2500",
        "2501",
        "2700",
        "2600",
        "2400",
        "2401",
        "1600",
        "1602",
        "1604",
        "1605",
        "1607",
        "1608",
        "1700",
        "1701",
        "1702",
        "1703",
        "1704",
        "1706",
        "1707",
        "2200",
        "2201",
        "2202",
        "2203",
        "2204",
        "2205",
        "2206",
        "3000",
        "3001",
        "3100",
        "3300",
        "3301",
        "3500",
        "3501",
        "3400",
        "3401",
        "3600",
        "3800",
        "3700"
      ]
    },
    "path": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Ordered array of token contract addresses defining the swap route. Provide [tokenInAddress, tokenOutAddress] for a direct swap. Example (WETH→USDC on Ethereum): ['0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48']."
    },
    "amountIn": {
      "type": "string",
      "description": "Amount of the input token to provide, specified in the token's smallest denomination (base units). Do not send human-readable decimal values. Examples: to swap 1 WETH (18 decimals), use \"1000000000000000000\"; to swap 1 USDC (6 decimals), use \"1000000\"."
    },
    "amountOutMin": {
      "type": "string",
      "description": "Minimum acceptable output amount in the token's smallest denomination (base units). Provides slippage protection — the transaction reverts if the output falls below this value. Set to \"0\" to disable slippage protection. Examples: to require at least 0.99 USDC (6 decimals), use \"990000\"; to require at least 0.99 WETH (18 decimals), use \"990000000000000000\"."
    },
    "to": {
      "type": "string",
      "description": "Blockchain address of the token recipient. For EVM chains, use a checksummed hex address (e.g., 0xABCDEF...). Output tokens are delivered to this address after the swap."
    },
    "deadline": {
      "type": "string",
      "description": "Transaction expiry time as a Unix timestamp in seconds (not milliseconds). The transaction will revert if not submitted before this time. Example: to set a 20-minute deadline, use current Unix timestamp + 1200."
    },
    "from": {
      "type": "string",
      "description": "Blockchain address of the token sender. For EVM chains, use a checksummed hex address (e.g., 0xABCDEF...). This address must hold sufficient balance of the input token and will sign the transaction."
    },
    "gas": {
      "type": "string",
      "description": "Maximum number of gas units to allocate for the transaction, as an integer string (e.g., '200000'). If omitted, gas is estimated automatically. Note: this is gas units, not wei or gwei."
    },
    "gasPriority": {
      "type": "string",
      "description": "Specifies the priority level for gas fees (e.g., 'low', 'medium', or 'high'), which influences the transaction speed and cost."
    },
    "slippage": {
      "type": "string",
      "description": "Maximum acceptable slippage as a percentage of the swap value. Valid range: 0 to 100 (e.g., 1 = up to 1% slippage). Defaults to 1. The transaction reverts if the output deviates more than this percentage from the quoted price."
    },
    "enableFee": {
      "type": "boolean",
      "description": "Flag to include a basis points fee transaction alongside the main transaction when set to true."
    },
    "batchOption": {
      "type": "string",
      "description": "Transaction batching standard to use. Supported values: 'EIP-5792' (wallet-level batching via wallet_sendCalls) or 'EIP-7702' (EOA code delegation via batcherContract). Requires batcherContract when using EIP-7702.",
      "enum": [
        "EIP-5792",
        "EIP-7702"
      ]
    },
    "batcherContract": {
      "type": "string",
      "description": "The EOA address of the batcher that will be used to execute the transaction when using EIP-7702 batching. If not provided, the default batcher contract for the chain will be used."
    },
    "simulate": {
      "type": "boolean",
      "description": "When true, dry-runs the transaction batch via eth_simulateV1 and returns a simulate field with status and error on each transaction."
    },
    "poolFees": {
      "type": "string",
      "description": "Fee tier of the target liquidity pool in basis points (1 bp = 0.01%). Common values for Uniswap V3-style AMMs: 100 (0.01%), 500 (0.05%), 3000 (0.3%), 10000 (1%). If omitted, the pool yielding the highest output amount is selected automatically."
    }
  },
  "required": [
    "path",
    "amountIn",
    "to",
    "deadline",
    "from"
  ]
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/blockdaemon-dex-swapwithapproval-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.