Quote and swap

Build an unsigned swap transaction

Turns a quote into a transaction against the Chord router. You sign it and broadcast it; Chord never sees a key and never holds funds.

Notes

  • Send the /quote body back unmodified. chain must match the quote.
  • For an ERC-20 input, approve the router (transaction.to) for at least inputAmount first — or run /swap/simulate and let it tell you.
  • slippageBps is a consistency check only: the signed minimum output is the quote's otherAmountThreshold. A different value is refused with SLIPPAGE_MISMATCH — re-quote at the slippage you want.
  • On Arc the native sentinel aliases to the USDC predeploy: a "native" input is pulled by transferFrom, a "native" output is delivered as the predeploy, and value is always 0.
  • batch: "7702" is Monad-only (EIP-7702 one-signature approve+swap); it is ignored on every other chain.
post/swap

Request

  • Base URL: https://api.getchord.xyz/v1
  • URL: https://api.getchord.xyz/v1/swap
  • Auth: none declared

Request body

userPublicKeystring required

Wallet that signs and receives the output.

chain5042 | 4663 | 143 | 43114 | 8453 | 56 | 42161 | 1

Must match the quote.

slippageBpsinteger

Optional consistency check — same value the quote was requested with.

feeAccountstring

Referrer credited with the referral share of the protocol fee.

wrapUnwrapMONboolean

Wrap / unwrap the native unit around the swap where the chain has a wrapped native (not Arc).

usePermit2boolean
batch'7702'

Response

Sign transaction with any wallet library and submit it to the chain in chainId.

lastValidBlockHeightinteger

Block after which the quote should be considered stale.

batch7702object

Monad only — the one-signature approve+swap plan.

Changes

No recorded changes to this operation across all 1 revision of this API.