---
title: "Execute a token swap"
method: POST
path: "/api/v2/swap/execute"
tags: ["Swap Endpoints"]
---

# Execute a token swap

`POST /api/v2/swap/execute`

Get executable transactions for token-to-token swaps. Supports same-chain and cross-chain swaps with multiple from/to assets.

## Request body

- SwapExecuteRequest — Request body for executing a token swap
  - `from_assets` SwapAssetInput[], required — Tokens to swap from (at least one required)
    - `chain` string, required — Chain slug (e.g. ethereum, base, solana)
    - `contract` string, required — Contract address of the token
    - `amount` string, required — Amount in the smallest unit of the token (e.g. wei for ETH). Use "0" for to_assets to receive the market rate.
  - `to_assets` SwapAssetInput[], required — Tokens to swap to (at least one required)
    - `chain` string, required — Chain slug (e.g. ethereum, base, solana)
    - `contract` string, required — Contract address of the token
    - `amount` string, required — Amount in the smallest unit of the token (e.g. wei for ETH). Use "0" for to_assets to receive the market rate.
  - `address` string, required — Wallet address executing the swap
  - `recipient` string — Recipient address (defaults to sender address)
  - `slippage_tolerance` number, double — Slippage tolerance as a decimal (0.0 to 0.5, default: 0.01)

## Response `200`

Swap execution data retrieved successfully

## Other responses

- `400` — For error reasons, review the response data.
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `409` — Conflict
- `500` — Internal server error. Please open a support ticket so OpenSea can investigate.

---

[API](https://skmtc.dev/opensea/apis/opensea-api.md) · [All operations](https://skmtc.dev/opensea/apis/opensea-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/opensea/opensea-api/revisions/acee8835f2ae/schema)
