Hash files
🤖/file/hash hashes files in Assemblies.

This Robot allows you to hash any file as part of the Assembly execution process. This can be useful for verifying the integrity of a file for example.
Usage example
Hash each uploaded file using the SHA-1 algorithm:
{
"steps": {
"hashed": {
"robot": "/file/hash",
"use": ":original",
"algorithm": "sha1"
}
}
}Parameters
output_metaRecord<string, boolean> | boolean | Array<string>Allows you to specify a set of metadata that is more expensive on CPU power to calculate, and thus is disabled by default to keep your Assemblies processing fast.
For images, you can add
"has_transparency": truein this object to extract if the image contains transparent parts and"dominant_colors": trueto extract an array of hexadecimal color codes from the image.For images, you can also add
"blurhash": trueto extract a BlurHash string — a compact representation of a placeholder for the image, useful for showing a blurred preview while the full image loads.For videos, you can add the
"colorspace: true"parameter to extract the colorspace of the output video.For audio, you can add
"mean_volume": trueto get a single value representing the mean average volume of the audio file.You can also set this to
falseto skip metadata extraction and speed up transcoding.resultboolean(default:false)Whether the results of this Step should be present in the Assembly Status JSON
queuebatchSetting the queue to 'batch', manually downgrades the priority of jobs for this step to avoid consuming Priority job slots for jobs that don't need zero queue waiting times
force_acceptboolean(default:false)Force a Robot to accept a file type it would have ignored.
By default, Robots ignore files they are not familiar with. 🤖/video/encode, for example, will happily ignore input images.
With the
force_acceptparameter set totrue, you can force Robots to accept all files thrown at them. This will typically lead to errors and should only be used for debugging or combatting edge cases.ignore_errorsboolean | Array<meta | execute>(default:[])Ignore errors during specific phases of processing.
Setting this to
["meta"]will cause the Robot to ignore errors during metadata extraction.Setting this to
["execute"]will cause the Robot to ignore errors during the main execution phase.Setting this to
trueis equivalent to["meta", "execute"]and will ignore errors in both phases.usestring | Array<string> | Array<object> | objectSpecifies which Step(s) to use as input.
- You can pick any names for Steps except
":original"(reserved for user uploads handled by Transloadit) - You can provide several Steps as input with arrays:
{ "use": [ ":original", "encoded", "resized" ] } - You can also tag an input Step with
asto pass semantic intent to robots: - You can also tag input Steps with
asto pass semantic intent to robots:{ "use": [ { "name": ":original", "as": "image" }, { "name": ":original", "as": "mask" } ] }
Tip
That's likely all you need to know about
use, but you can view Advanced use cases.- You can pick any names for Steps except
algorithmb2 | md5 | sha1 | sha224 | sha256 | sha384 | sha512(default:"sha256")The hashing algorithm to use.
The file hash is exported as
file.meta.hash.partialfull | first | last | both(default:"full")Specifies which portion of the file to hash. This is useful for fast fingerprinting of large files.
"full"(default): Hash the entire file."first": Hash only the first N bytes (specified bypartial_size)."last": Hash only the last N bytes (specified bypartial_size)."both": Hash the first N bytes concatenated with the last N bytes.
When using partial hashing,
file.meta.hash_partialindicates the mode used, andfile.meta.hash_partial_sizeindicates the number of bytes hashed from each portion.partial_sizestring | number(default:1048576)The number of bytes to hash when using partial hashing. Defaults to
1048576(1 MB).This parameter is only used when
partialis set to"first","last", or"both".