oasis-wallet-web icon indicating copy to clipboard operation
oasis-wallet-web copied to clipboard

feature: Add a way to export data to a machine readable format

Open Yawning opened this issue 2 years ago • 14 comments

As far as I am aware, there is currently no convenient way to export historical data from this (or for that matter any other wallet). It would be extremely useful if it was possible to export things like the transaction history and staking rewards received per account in a format that is easy to import into other tools (CSV comes to mind).

This does not neccecarily have to be something that is part of the web wallet (a different service that I can go to and be like "give me a dump of this account" would also be acceptable).

How to deal with this potentially being moderately expensive may be an open question.

Yawning avatar Nov 29 '21 10:11 Yawning

transaction history sounds doable. oasismonitor has an endpoint for that https://oasismonitor.com/docs#operation/getTransactionsList

I don't see anything from that API for staking rewards though.

pro-wh avatar Nov 29 '21 22:11 pro-wh

transaction history sounds doable. oasismonitor has an endpoint for that https://oasismonitor.com/docs#operation/getTransactionsList

I don't see anything from that API for staking rewards though.

https://oasismonitor.com/docs#operation/getAccountRewards https://oasismonitor.com/docs#operation/getAccountsRewardsStat

Yawning avatar Nov 30 '21 07:11 Yawning

This feature is a must have and I'll make sure it's prioritized accordingly. It definitely belongs to the wallet side if you ask me...

We can do a very simple dump of the whole wallet history as an MVP but I would like to see a more elaborate "export history" feature which would allow users to apply different filters (e.g. date/amount/address/etc) and then export the resulting subset of transactions.

CSV export fields I can see as relevant for the export: Hash, Type, Status, Block, UTC Timestamp, From address(es), To address(es), Fee, Gas Price, Token amounts

@Yawning @pro-wh looking forward to your input!

nikolaglumac avatar Aug 10 '22 06:08 nikolaglumac

Since our own indexer is in the works, using that for staking rewards is probably better than the calls I mentioned earlier in this ticket as well.

Yawning avatar Aug 10 '22 06:08 Yawning

Agreed. The API for this feature is to be implemented as a part of a Unified Wallet Backend which will use Oasis Indexer as a dependency.

nikolaglumac avatar Aug 10 '22 07:08 nikolaglumac

  • if we bring that data into the wallet, it would be very nice of us to allow users to export it.
  • @nikolaglumac can you confirm whether we currently bring that data into the wallet?
  • if we don't bring that data into the wallet, this would be better implemented outside the wallet
  • I prefer that we not build filtering functionality into our in-wallet export tool

pro-wh avatar Aug 10 '22 18:08 pro-wh

if we don't bring that data into the wallet, this would be better implemented outside the wallet

Kind of disagree. People expect the wallet to provide such things (I guess the block explorer can do it too, though some think it's better here). A partial export is crap and kind of worthless, and there should be at least one first party place where ALL token changes (staking, transfers, transactions, paratime bridging, etc etc etc) can be downloaded in exactly one document.

Yawning avatar Aug 11 '22 09:08 Yawning

I believe this feature definitely belongs to the Wallet and not the Explorer. We use wallet applications to get "a personalized view" of your wallet and transactions.

Partial export or if you prefer "filtered" export is definitely helpful for many cases. The simplest one would be an annual tax report for which you obviously need only transactions for a given year. This of course doesn't not prevent you in any way from bulk exporting everything.

I would prefer this feature to be built in the following way:

  • Data fetching API would be a Unified Wallet Backend module which we can also use in other Backends (such as Unified Blockchain Explorer Backend)
  • the filtering of the data would be a frontend concern same as the CSV file generation.

nikolaglumac avatar Aug 11 '22 11:08 nikolaglumac

Kind of disagree. People expect the wallet to provide such things

I believe this feature definitely belongs to the Wallet and not the Explorer.

not here to dispute what other people expect or your beliefs. it's just that someone asked :point_down:

@pro-wh looking forward to your input!

I have a very different philosophy of what a wallet is, but I want to assure you it's okay for us not to follow that


I guess the block explorer can do it too

that would be a good place for it. saves a lot of trouble if you're on a device that doesn't have your wallet set up. or if you want the report for an account not set up in your wallet

will have limitations with the upcoming confidential paratimes though


A partial export is crap and kind of worthless, and there should be at least one first party place where ALL token changes (staking, transfers, transactions, paratime bridging, etc etc etc) can be downloaded in exactly one document.

agreed too. just pointing out that this is separate from the above discussion about where this (complete) export should be. right? or is there something intrinsically incomplete about one of the options?


Partial export or if you prefer "filtered" export is definitely helpful for many cases. The simplest one would be an annual tax report for which you obviously need only transactions for a given year.

filtering by year is a good idea, so that exports won't uncontrollably get more expensive over time. and after all, the next best option to having no filtering functionality is to have very limited filtering.

pro-wh avatar Aug 11 '22 19:08 pro-wh

Data fetching API would be a Unified Wallet Backend module

can't get any information from this other than it saying "there ought to be a place where we can get this data."

the filtering of the data would be a frontend concern same as the CSV file generation.

certain filters we should do in the backend so that we can save some work if a lot of data will be filtered out

pro-wh avatar Aug 11 '22 19:08 pro-wh

not here to dispute what other people expect or your beliefs. it's just that someone asked point_down

Yeah. I am ultimately ok with wherever this lives, as long as there is a one full featured place for it. I do have a slight perception of "wallet = where people go to look at their account" (since a wallet by it's nature has to have block-explorer-esque fuctionality).

that would be a good place for it. saves a lot of trouble if you're on a device that doesn't have your wallet set up. or if you want the report for an account not set up in your wallet

The web wallet lets you view all accounts already...

Yawning avatar Aug 11 '22 22:08 Yawning

Thank you both for your feedback! It is good to have different views and ideas - I like that! :-) I don't expect us to come up with the exact feature requirements now. We'll do that in a proper Double Diamond process as it is crucial to get not only our internal but also stakeholders and end-user feedback too. Thanks once again!

nikolaglumac avatar Aug 12 '22 10:08 nikolaglumac

Any updates on this? Looks like this is still missing as an accessible feature for users.

martin-martin avatar Jun 25 '23 10:06 martin-martin

not lately. we've been focusing on paratime support for emerald and sapphire

pro-wh avatar Jun 30 '23 22:06 pro-wh