DEVELOPER DOCS
Using Devnet

Using Devnet

Irys' Devnet is for developers who are building projects or learning how to use our SDK. Uploads to Devnet are kept for approximately 60 days. When using Devnet, developers pay using tokens that are available from free public faucets.

To connect to Devnet, supply the address of our Devnet node when instantiating either an Irys or WebIrys object.

When using Devnet with the Irys class, you must specify an RPC address. When using the WebIrys class, the RPC address is only required when using non-EVM chains.

Irys Class (Server-side)

EVM Chains

const getIrys = async () => {
	const url = "https://devnet.irys.xyz";
	const token = "matic";
	const providerUrl = "https://rpc-mumbai.maticvigil.com";
 
	const irys = new Irys({
		url, // URL of the node you want to connect to
		token, // Token used for payment
		key: process.env.EVM_PRIVATE_KEY, // EVM private key
		config: { providerUrl }, // Optional provider URL, only required when using Devnet
	});
	return irys;
};

Solana

const getIrys = async () => {
	const url = "https://devnet.irys.xyz";
	const token = "solana";
	const providerUrl = "https://api.devnet.solana.com";
 
	const irys = new Irys({
		url, // URL of the node you want to connect to
		token, // Token used for payment
		key: process.env.SOL_PRIVATE_KEY, // SOL private key
		config: { providerUrl }, // Optional provider URL, only required when using Devnet
	});
	return irys;
};

WebIrys class (Browser)

EVM Chains

const getWebIrys = async () => {
	// Ethers5 provider
	await window.ethereum.enable();
	const provider = new providers.Web3Provider(window.ethereum);
 
	const url = "https://devnet.irys.xyz";
	const token = "matic";
 
	// Create a wallet object
	const wallet = { name: "ethersv5", provider: provider };
	// Use the wallet object
	const webIrys = new WebIrys({ url, token, wallet });
	await webIrys.ready();
 
	return webIrys;
};

Solana

const getWebIrys = async () => {
	await window.solana.connect();
	const provider = new PhantomWalletAdapter();
	await provider.connect();
 
	const url = "https://devnet.irys.xyz";
	const token = "solana";
	const rpcURL = "https://api.devnet.solana.com"; // Required
 
	// Create a wallet object
	const wallet = { rpcUrl: rpcURL, name: "ethersv5", provider: provider };
	// Use the wallet object
	const webIrys = new WebIrys({ url, token, wallet });
	await webIrys.ready();
 
	return webIrys;
};