Skip to main content
Multi-chain DEX aggregator routing swaps across decentralized exchanges. Supports limit orders and the Delta algorithm.

What it offers

  • simpleSwap: Execute a simple single-path swap via Augustus router

Notes

  • Augustus V6 is deployed on every chain the registry lists; Augustus V5’s address holds the router everywhere but Base
  • On Base, Augustus V5’s address is not the router: it is a small fee-splitting contract that dispatches none of the router’s functions. A call carrying no value reverts; a call carrying value, simpleSwap included, succeeds without swapping, and the value goes to two accounts the contract fixed when it was deployed (98.5% and 1.5%). Do not send it anything; on Base the router is Augustus V6
  • Route computation happens off-chain via ParaSwap API - callees/exchangeData come from API
  • Approve srcToken to Augustus contract before swapping

Its names in a program

On Ethereum, Paraswap is a namespace: its contracts need no import.

Deployments

ABI

AugustusV5ABI

import AugustusV5ABI from "./protocols/paraswap/AugustusV5ABI.json"; Speaks for: augustusV5.
  • simpleSwap((address fromToken, address toToken, uint256 fromAmount, uint256 toAmount, uint256 expectedAmount, address[] callees, bytes exchangeData, uint256[] startIndexes, uint256[] values, address beneficiary, address partner, uint256 feePercent, bytes permit, uint256 deadline, bytes16 uuid) data) payable returns (uint256 receivedAmount)
Not on Base’s augustusV5 (0xDEF171Fe48CF0115B1d80b88dc8eAB59176FEe57), whose code does not dispatch them: simpleSwap. Do not call them there: the call does not run the function, and whether it reverts is up to that code.

Next steps