0xProject / standard-relayer-api

Standard specifications for 0x relayer public APIs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Guidance For MultiAssetProxy

AusIV opened this issue · comments

With the introduction of the MultiAssetProxy, some things in the current version of the Standard Relayer API are a bit unclear. For example

makerAssetAddress [string] returns orders where the contract address for the maker asset matches the value specified

With the MultiAssetProxy, there's not necessarily a single contract address for the maker asset, so how should this parameter be handled?

That's a good point @AusIV. How would you suggest we handle this case? We could specify that it can match any of the makerAssetData contract addresses. We could also add an additional option to specify the assetData ID one wants returned in the orders (so as to filter out multiAssetData orders). Thoughts?

I'm not sure. OpenRelay hasn't implemented support for the MultiAssetProxy yet. We baked in a bunch of assumptions around the idea that an asset was going to have a single address, and reworking that assumption impacts a lot of moving parts. I've got a pretty good idea how we can adjust our order watcher to deal with it, but I'm not sure about what makes sense in the SRA for someone who would be using the multi-asset proxy. In general, I think it would violate expectations of users who were searching for a takerAssetAddress of an ERC20 token to end up getting bundles that include a bunch of other tokens too.