For instance this swap https://etherscan.io/tx/0xc1fe9d8e0263420f863b67ced6c2fe6c68042e815dcfa87f60ea143f0a4e506f The current output does not allow me to figure out what kind of transaction this was and differentiate it from the initiation transaction where the BAYC was moved to the escrow contract, which is https://etherscan.io/tx/0x694861e8e08c5862270daf7b40385b0f39af39fcb7558dd146b850d15ebe0418 . Site design / logo 2022 Stack Exchange Inc; user contributions licensed under CC BY-SA. So I can use the /nft/0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d/transfers endpoint. rev2022.7.21.42639. sure, so lets say that for the above I want to make a dashboard for BAYC transfers (sales or otherwise). Ethereum Stack Exchange is a question and answer site for users of Ethereum, the decentralized application platform and smart contract enabled blockchain. Did Sauron suspect that the Ring would be destroyed? I think this would allow for much more applications where devs can figure out how nft collections are used (as pure investments, as loan collateral, being swapped for assets, etc.). So if this could be included in the output for /nft/0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d/transfers then I wouldnt have to do all these extra calls and I think lots of people will be able to use this. Thanks for contributing an answer to Ethereum Stack Exchange! JavaScript front end for Odin Project book library database. Why does the capacitance value of an MLCC (capacitor) increase after heating? Time between connecting flights in Norway. I want to ask how u decode the input/log are SWAP? So I look at the transfers of the BAYC contract because any transfer of a BAYC token needs to pass through that contract independent of new marketplace or whatever. Asking for help, clarification, or responding to other answers.
I would like to know more than just the OpenSea transactions. ), web3.utils.hexToNumberString & web3.utils.hexToNumber err, console.log(0x000000000000000000000000000000000000000000000016d8fceafcef3c0000) Powered by Discourse, best viewed with JavaScript enabled, Input data (or method) for nft contract transfers, https://etherscan.io/tx/0xc1fe9d8e0263420f863b67ced6c2fe6c68042e815dcfa87f60ea143f0a4e506f, https://etherscan.io/tx/0x694861e8e08c5862270daf7b40385b0f39af39fcb7558dd146b850d15ebe0418. I would like to look at a certain nft collection contract and figure out which transfers occurred through any market or swap contract. How does a tailplane provide downforce if it has the same AoA as the main wing? It only takes a minute to sign up. To subscribe to this RSS feed, copy and paste this URL into your RSS reader. 25000000000000000000L = 25*10^18. Laymen's description of "modals" to clients, How to encourage melee combat when ranged is a stronger option, Is there a way to generate energy using a planet's angular momentum. Using ethereum input decoder But they could have named this whatever. This is done in Ethedeleta tradeBalances function, You should receive amountGive * amount / amountGet, 0x8b7363b040ca2bb600000 * 0x38d7ea4c68000 / 0x16d8fceafcef3c0000 So in an ideal world the API would show the input data in decoded form as etherscan does with their method column and in raw input data form to figure out the arguments of the called function (so from your side input data is probably easiest as a first step). shows me the same values as on etherscan.io, converting to Ascii gives garbage (as recommended here: How to decode input data from a transaction? So I want to build with the nft collections as starting points since most users dont think in terms of OpenSea transfers and LooksRare transfers (or whatever other markets will pop-up), but rather collection-centric. If I look up the transaction hash in the /transaction/{transaction_hash} however. Stack Exchange network consists of 180 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers. Which is fine to read the addresses. By clicking Accept all cookies, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy. Is it possible to extend the output of the REST API /nft/{address}/transfers with the input data or method as etherscan does so I can figure out if and which function of a contract was used (and which one) to transfer nfts in a certain collection contract? API to "Read Contract Information" to fetch stats of an ICO. You need the abi (kinda like source code) of the contract that the interaction took place with. How did this note help previous owner of this old film camera? The more marketplaces we will get, the more messy it will be to be able to track all these different market contracts. Skipping a calculus topic (squeeze theorem). The atomicMatch function on the OpenSea contract for instance is initiates a sale. From that I can see that it was actually a swapEvent. I know that these are hashes and they represent something but Im not sure how to begin. can you give a more exact example (like actual data) of how the output is now and what you would want to be added? But I want to make it robust to new marketplaces popping up every couple weeks. Making statements based on opinion; back them up with references or personal experience. Error: invalid type (arg="type", value="a") web3.js, What's the difference between a magic wand and a spell, Blamed in front of coworkers for "skipping hierarchy". reddit.com/r/EtherDelta/comments/6kdiyl/smart_contract_overview, Design patterns for asynchronous API communication.
How can I get another align to this equation? Why do NPNP thyristors remain on but NPN transistors don't after gate voltage is removed? I made a transaction etherdelta where I bought 25 tokens. When adding a new disk to RAID 1, why does it sync unused space? Reading my input data on etherscan, I see each value as hex values. So I run: and get back (I only show results here): From this I cant automatically figure out if the middle transaction (transferring a BAYC for 0.05 eth) was a fat finger error, or that this was part of a bigger transaction with a swap contract, or I would need to resort to some heuristics that will probably not be accurate and have a bunch of edge-cases. Hey @intothemeta, Im new to web3. I'm not an Etherdelta expert, but I'd guess they are the original offer amounts, you only buy less than the total to sell. How is TouchID more secure than a simple password? Thank you in advance. How to decode input data from tx using python3? The best answers are voted up and rise to the top, Start here for a quick overview of the site, Detailed answers to any questions you might have, Discuss the workings and policies of this site, Learn more about Stack Overflow the company. Here from the input and logs I can figure out that it was actually a contract interaction and which functions were called. So that would require 2 extra response fields (methods and input data). I think that I understand now, you could propose it on roadmap: https://roadmap.moralis.io/. By clicking Post Your Answer, you agree to our terms of service, privacy policy and cookie policy. How to decode input data from a transaction? Announcing the Stacks Editor Beta release! How to convert the hex to the expected value? Based on Tehillim 92, would playing not violate Shabbat? Id rather not resort to filtering on price or some other heuristic. Sadly from there on it would be a manual task to classify contract functions to their utility, since the makers of smart-contracts can call functions whatever they like. Connect and share knowledge within a single location that is structured and easy to search. To learn more, see our tips on writing great answers. Scientific writing: attributing actions to inanimate objects. shows some arbitrary value, From Miguel Mota page, using Etherdelta ABI, and your transaction input I get, The commented values are those used to calculate what you receive. So the expected transformed value of the input data [1] should be 25 or 25 * 10^18 (in wei) or at least any multiple of 25*10^x. Then you can decode the input data to show which function was called in the transaction. But I would like to read the amounts [1] && [3] as numbers.