When a user adds a new file to a folder, it's first version is created.
A new file metadata transaction and a separate data transaction are created when a user wants to create a new file.
Files can only be created in existing drives, and must have a valid
Files can only be created in existing parent folders, and must have a valid
The new File Entity Data transaction must only specify the file’s mime type aka
The new file metadata transaction must generate a new UUIDv4 for the
File metadata transactions must have
The client gets the user’s local time for the
Unix-Timetag, represented as Seconds Since Unix Epoch.
The client populates the File Entity Metadata Transaction Data JSON after creating the data transaction.
nameThe name of the file including extension
sizeThe size of the file on disk, in bytes as an integer
lastModifiedDateThe file’s last time of modification as reported by the user’s operating system, in milliseconds since Unix epoch
dataTxIdThe Arweave transaction id of this File Entity’s Data Transaction
dataContentTypeThe mime time of this File Entity’s data must be determined by the client
If the File is private
Ciphertag must be filled out with the respective encryption algorithm (currently
AES256-GCM) for both the Metadata and Data transactions.
Cipher-IVtag must be filled out with the generated Initialization Vector for both the Metadata and Data transactions. Each one has its own unique IV.
It must have the following content type
Content-Type: "application/octet-stream"for both the Metadata and Data transactions
The ArFS client must encrypt the File Entity’s Data and Metadata JSON using their assigned
Community Tips (AR wallet to wallet transactions) should be added to data uploads, to increase chances of mining and avoid separate transaction fees.