The /s3/import Robot

We are happy to import from whatever storage solution suits you best.
The /s3/import
Robot imports whole directories of files from your S3 bucket.
Parameters
Name | Type | Default | Description |
---|---|---|---|
use
|
(required) String / Array of Strings | GeneralSpecifies which Step(s) to use as the input to this Robot.Special Step namesA special Step name is":original" , which provides user uploads handled by Transloadit.
Providing several Steps as inputYou can add arrays touse several Steps:
Step bundlingSome Robots can gather several Step results for a single invocation. For example, the /file/compress Robot would normally create one Zip file for each file passed to it. If you'd setbundle_steps to true,
however, it will create one archive containing all the result files from
all Steps you give it. To enable bundling, provide an object
like the one below to the use parameter:
This is a crucial parameter
for the /video/adaptive Robot,
otherwise you'll generate 1 playlist for each viewing quality. Keep in mind that all input Steps must be present in your Template. If one of them is missing, no result is generated because the Robot waits indefinitely for all input Steps to be finished. Group by originalSticking with the /file/compress Robot example, you can setgroup_by_original to true , in order to create a separate Zip file
for each of your uploaded or imported files, instead of
creating one archive containing all originals (or one per resulting file). This is a crucial parameter
for the /media/playlist Robot.
DemoSee a demo for theuse parameter
here.
|
|
credentials
|
(required) String | Please create your associated Template Credentials in your Transloadit account and use the name
of your Template Credentials as this parameter's value.
They will contain the values for your S3 bucket, key, secret and bucket region.
While we recommend to use Template Credentials at all times, some use cases demand dynamic credentials for which using
Template Credentials with their static nature is too unwieldy. If you have this requirement, feel free to use the following
parameters instead: "bucket" , "bucket_region" (for example: "us-east-1" or "eu-west-2" ), "key" , "secret" .
|
|
path
|
(required) String / Array of Strings | The path in your bucket to the specific file or directory. If the path points to a file, only this file will be imported. For example: js/my_javascript_file.js
If it points to a directory, then all files from this directory will be imported. For example: js/ For Transloadit to recognize you want to import all files from a directory, make sure your path ends with a / slash. Directories are not imported recursively. If you want to import files from subfolders and sub-subfolders, please do this with another Robot Step.
If you want to import all files from the root directory, please use / as the value here. In this case, make sure all your objects belong to a path. If you have objects in the root of your bucket that aren't prefixed with / , you'll receive an error: A client error (NoSuchKey) occurred when calling the GetObject operation: The specified key does not exist.
You can also use an array of path strings here to import multiple paths in the same Robot Step.
|
|
recursive
|
Boolean | false
|
Setting this true will enable importing files from subfolders and sub-subdfolders, etc. of the given path.
Please use the pagination parameters page_number and files_per_page wisely here.
|
page_number
|
Integer | 1 | The pagination page number. To not break backwards compatibility in non-recursive imports, this for now only works when recursive is to true .
When doing big imports, make sure no files are added or removed from other scripts within your path, otherwise you might get weird results with
the pagination.
|
files_per_page
|
Integer | 1000 | The pagination page size. this only works when recursive is to true for now in order to not break backwards compatibility in non-recursive imports.
|
ignore_errors
|
Array | []
|
Possible array members are "meta" and "import" .
There might be an error coming up when trying to extract meta data from your imported files. This happens for files that are zero bytes big for example. Including "meta" in the array will cause the Robot to not stop the import (and the entire Assembly) when that happens.
Including "import" in the array will ensure Robot does not error out on any import errors either.
To keep backwards compatibility, setting this parameter to true will set it to ["meta", "import"] internally.
|
Demos
Our /s3/import Robot can be used in combination with other Robots, to create powerful workflows unique to your use case. Here are a few example scenarios that you can try live on our website:
- Import a specific file from S3
- Import an entire folder of files from S3
- Resize all images in an S3 bucket
Blog posts about the /s3/import Robot
We wrote the following posts about the /s3/import Robot on our blog:
- Kicking Transloadit Into Gear for the New Year February 1, 2015
- Introducing the new /s3/import Robot July 17, 2013
Did you know?
You can easily combine Robots to create powerful workflows, unique to your business.
This is the power of Transloadit.