## Introduction#

The SDK is designed to make things simpler and accessible. It however cannot execute trades or send transactions. With its robust functionality, the SDK calculates data required to interact with the DMM. Please note that The SDK cannot execute trades or send transactions on your behalf. Rather, it offers utility classes and functions which make it easy to calculate the data required to safely interact with DMM. You will have to construct the transaction yourself, just use the SDK to get the inputs needed.

The example below focuses exclusively on sending a transaction to the DMM router

### Sending a Transaction to the Router#

import { ChainId, Token, WETH, Fetcher, Trade, Route, TokenAmount, TradeType } from '@dynamic-amm/sdk'
const DAI = new Token(ChainId.MAINNET, '0x6B175474E89094C44Da98b954EedeAC495271d0F', 18)
const pool = await Fetcher.fetchPoolData(DAI, WETH[DAI.chainId])
const route = new Route([pool], WETH[DAI.chainId])
const amountIn = '1000000000000000000' // 1 WETH
• to is the recipient's address.
• value is the amount of ETH that must be included as the msg.value in the transaction.