source
field (passed in the requests below). This helps us track usage, as well as prevent DDoS attacks.source
created, together with associated credentials. The team will provide you with the authentication key once credentials have been generated.<YOUR_SOURCE>_AUTH_KEY: <generated credential key>
my_aggregator
, the header name will be MY_AGGREGATOR_AUTH_KEY
./marketMakers
<source>
use your identifier (e.g. 1inch
, zerion
, ...)<chainId>
use your network ID (e.g. 1
for mainnet, 137
for polygon).{marketMakers: ['mm1', 'mmXYZ']}
.0x00..00
)ETH-USDC
are{ level: "0.5", "price": "3000" }
{ level: "1.5", price: "3000"}
{ level: "5", price: "2999"}
/rfq
tradeSingleHop
call is meant to be composable. However, since it is most often composed with AMMs that have slippage, the Hashflow contracts allow you to tune the token amounts in order to account for slippage (see the description of maxBaseTokenAmount
below).eoa
. EOA address. Set to eoa
, if set in your signed quote. Otherwise, use 0x0000000000000000000000000000000000000000
address.maxBaseTokenAmount
/ maxQuoteTokenAmount
. These are what you receive in the API as baseTokenAmount
/ quoteTokenAmount
. Sometimes you can receive a quote for higher than what you requested. It is essential that you use the requested amount in the effectiveBaseTokenAmount field.effectiveBaseTokenAmount
. The actual swapped amount. This has to be less than or equal to maxBaseTokenAmount
. We suggest to keep them equal unless there's a discrepancy with the requested amount.