Swarm Importer: Import your Swarm data to WeaveVM

Swarm Importer: Import your Swarm data to WeaveVM

February 17, 2025

Today we’re introducing a simple way to give your Swarm data permanent backup – a new tool that seamlessly imports your data to WeaveVM while keeping everything working exactly as before.

The single change on your side: the gateway endpoint. This makes migrating super easy, with minimal changes in your application code.

gateways

Why Import from Swarm?

Swarm is Ethereum’s storage solution – it provides decentralized, redundant storage for everything from dApp code to user data. Think of it as part of Ethereum’s core infrastructure stack for storing and distributing content.

The Cost Reality

Storing 1GB on Swarm costs 3.936 BZZ ($1.10) per year. Moving that same data to WeaveVM costs ~$27 once. Yes, that’s a bigger upfront cost. But it’s like buying vs renting – sometimes you just want to know your data isn’t going anywhere. Ever. Especially for things like NFT metadata where “oops, it disappeared” or “Access Denied” shouldn’t ever be an option.

What does that premium get you? Your data stays accessible through both networks, plus you get:

  • True permanence (not just redundancy)
  • High data availability
  • Smart contract computation capabilities
  • Full compatibility with your existing Swarm setup

Blockchain was built on the promise of permanence – your transactions, contracts, and data living forever onchain. If you’re storing important data on Swarm, this tool helps deliver on that promise.

Using swarm-importer

We released swarm-import as a Rust library and REST API, to provide high integration interoperability for Swarm users techstack. For a library integration example, check out the swarm-importer repository.

For the REST API, importing your Swarm data to WeaveVM is pretty straightforward! Using this swarm hash as an example 4d91…7f8e – all you need to do is to call this swarm-importer method:

https://swarm.wvm.network/v1/import/4d91783470928ed01f6266a3828849e743fd3a41ddebacc85a418add713e7f8e  

This will return:

{  
  "swarm": "4d91783470928ed01f6266a3828849e743fd3a41ddebacc85a418add713e7f8e",  
  "wvm_txid": "0x7b231958f01b83ac48f1096990bdda17209383ea0d20ed23881a2c78ac1a719f"  
}  

Already imported Swarm hashes will not be re-imported as they already exist permanently on WeaveVM, therefore, all that you need in that case is to retrieve them back from WeaveVM. The swarm-importer maintains identical REST ACCESS method as provided in the Swarm gateway:

Permanently on WeaveVM: https://swarm.wvm.network/bzz/4d..

Temporary on Swarm: https://api.gateway.ethswarm.org/bzz/4d..

As you see, accessing your permanently stored Swarm data is just a matter of gateway switch!

What’s Next?

This Swarm importer is part of our broader mission: making permanent storage accessible and practical. We’re building bridges between the storage solutions you already use and WeaveVM’s permanent layer – with tools that work, minimal code changes required.

Want to get started? Check out the repo or join our Discord to share your feedback.