Transloadit

Export files to Tus-compatible servers

🤖/tus/store exports encoding results to any Tus-compatible server.

Installation

Since Vimeo works with OAuth, you will need to generate Template Credentials to use this Robot.

To change the title or description per video, we recommend to inject variables into your Template.

Usage example

Export uploaded files to the Tus live demo server:

{
  "steps": {
    "exported": {
      "robot": "/tus/store",
      "use": ":original",
      "endpoint": "https://tusd.tusdemo.net/files/"
    }
  }
}

Parameters

  • output_meta

    Record<string, boolean> | boolean

    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": true in this object to extract if the image contains transparent parts and "dominant_colors": true to extract an array of hexadecimal color codes from the image.

    For videos, you can add the "colorspace: true" parameter to extract the colorspace of the output video.

    For audio, you can add "mean_volume": true to get a single value representing the mean average volume of the audio file.

    You can also set this to false to skip metadata extraction and speed up transcoding.

  • result

    boolean (default: false)

    Whether the results of this Step should be present in the Assembly Status JSON

  • queue

    "batch"

    Setting 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_accept

    boolean (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_accept parameter set to true 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.

  • use

    string | Array<string> | Array<object> | object

    Specifies 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"
        ]
      }
      
  • endpoint

    string · required

    The URL of the Tus-compatible server, which you're uploading files to.

  • credentials

    string

    Create Template Credentials for this Robot in your Transloadit account and use the name of the Template Credentials as this parameter's value. For this Robot, use the HTTP template, which allows request headers to be passed along to the destination server.

  • headers

    Record<string, string> (default: {})

    Optional extra headers outside of the Template Credentials can be passed along within this parameter.

    Although, we recommend to exclusively use Template Credentials, this may be necessary if you're looking to use dynamic credentials, which isn't a feature supported by Template Credentials.

  • metadata

    Record<string, string> (default: {"filename":"example.png","basename":"example","extension":"png"})

    Metadata to pass along to destination. Includes some file info by default.

  • url_template

    string

    The URL of the file in the Assembly Status JSON. The following Assembly Variables are supported. If this is not specified, the upload URL specified by the destination server will be used instead.

  • ssl_url_template

    string

    The SSL URL of the file in the Assembly Status JSON. The following Assembly Variables are supported. If this is not specified, the upload URL specified by the destination server will be used instead, as long as it starts with https.

Related blog posts