fetch_quote
Documentation for eth_defi.cow.quote.fetch_quote function.
- fetch_quote(from_, buy_token, sell_token, amount_in, min_amount_out, api_timeout=datetime.timedelta(seconds=30), price_quality='fast')
Fetch a CowSwap quote for a given token pair and amounts.
Note
Work in progress.
https://docs.cow.fi/cow-protocol/reference/apis/quote
Example:
chain_id = web3.eth.chain_id weth = fetch_erc20_details( web3, WRAPPED_NATIVE_TOKEN[chain_id], ) usdce = fetch_erc20_details(web3, BRIDGED_USDC_TOKEN[chain_id]) amount = Decimal("0.0001") quoted_data = fetch_quote( from_="0xdcc6D3A3C006bb4a10B448b1Ee750966395622c6", # Dummy address buy_token=usdce, sell_token=weth, amount_in=amount, min_amount_out=amount / 2, ) assert quoted_data["from"].startswith("0x") # assert quoted_data["expiration"] == "1970-01-01T00:00:00Z" assert quoted_data["id"] is None assert quoted_data["verified"] is False assert quoted_data["quote"]["sellToken"] == "0x82af49447d8a07e3bd95bd0d56f35241523fbab1" assert quoted_data["quote"]["buyToken"] == "0xff970a61a04b1ca14834a43f5de4533ebddb5cc8" assert quoted_data["quote"]["receiver"] is None assert int(quoted_data["quote"]["sellAmount"]) > 1 assert int(quoted_data["quote"]["buyAmount"]) > 1 assert quoted_data["quote"]["validTo"] > 1761863893 assert quoted_data["quote"]["appData"] == "0x0000000000000000000000000000000000000000000000000000000000000000" assert int(quoted_data["quote"]["feeAmount"]) > 1 assert quoted_data["quote"]["kind"] == "sell" assert quoted_data["quote"]["partiallyFillable"] is False assert quoted_data["quote"]["sellTokenBalance"] == "erc20" assert quoted_data["quote"]["buyTokenBalance"] == "erc20" assert quoted_data["quote"]["signingScheme"] == "presign"
- Parameters
from_ (Union[eth_typing.evm.HexAddress, str]) –
buy_token (eth_defi.token.TokenDetails) –
sell_token (eth_defi.token.TokenDetails) –
amount_in (decimal.Decimal) –
min_amount_out (decimal.Decimal) –
api_timeout (datetime.timedelta) –
price_quality (Literal['fast', 'verified', 'optional']) –
- Return type