API Docs

irys.upload(data, tags)

Permanently uploads data.


  • data: The data to upload
  • tags: Optional metatags


- receipt: A receipt in the form of a JSON object with the following values:

response = {
	id, // Transaction id (used to download the data)
	timestamp, // Timestamp (UNIX milliseconds) of when the transaction was created and verified
	version, // The version of this JSON file, currently 1.0.0
	public, // Public key of the bundler node used
	signature, // A signed deep hash of the JSON receipt
	deadlineHeight, // The block number by which the transaction must be finalized on Arweave
	block, // Deprecated
	validatorSignatures, // Deprecated
	verify, // An async function used to verify the receipt at any time


const irys = await getIrys();
const dataToUpload = "GM world.";
try {
	const receipt = await irys.upload(dataToUpload);
	console.log(`Data uploaded ==>${}`);
} catch (e) {
	console.log("Error uploading data ", e);

The transaction id returned as part of the response is used to download the data, simply create a URL with the format[transaction-id].