Build
ONCHAIN STORAGE
SDK
Upload API
upload()

upload(data, tags?, anchor?)

Uploads data to Irys.

Parameters

Name
Type
Description
data
string | Buffer | Readable
The data to upload.
tags
Tag[]
(Optional) metatags.
anchor
string
(Optional) Random value used to prevent data item ID collisions, used with deterministic data item IDs only.

Returns

Type
Description
object
A receipt as 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
	block, // Deprecated
	validatorSignatures, // Deprecated
	verify, // An async function used to verify the receipt at any time
}

Funding

Uploads of less than 100 KiB are are free. For larger uploads, you'll need to fund your account first.

Example

ℹ️

Use a token-specific version of getIrysUploader() to connect to an Irys Bundler before uploading. Choose one from here.

const irys = await getIrysUploader();
 
const dataToUpload = "Hirys world.";
try {
	const receipt = await irys.upload(dataToUpload);
	console.log(`Data uploaded ==> https://gateway.irys.xyz/${receipt.id}`);
} catch (e) {
	console.log("Error uploading data ", e);
}
ℹ️

Use the transaction ID returned as part of the response to download the data by creating a URL in the format https://gateway.irys.xyz/:transactionId.