- 30 Jan 2023
- 2 Minutes to read
- DarkLight
Use files in a workflow
- Updated on 30 Jan 2023
- 2 Minutes to read
- DarkLight
You can use files in workflows by passing the file links between steps. By default, links to files that are the output of step executions can only be used in Torq steps. This means the file links can't be opened in a browser or shared with external services. There is an option to make the file link shareable.
Here are some common ways to use files in workflows:
- HTTP response returned as a file
- Upload a file as a trigger input
- File attachment for an IMAP trigger
Important to know
- The format for links to files that are outputs of step executions:
tqfile://steps/XXXXXXX
- File links can't be shared externally. They can only be passed in Torq steps using the inline function file.
Example:{{ file $.send_an_http_request.api_object.url }}
- Other file links are signed URLs and have this format: https://link.torq.io/****dEjnLCXnv7. These file links can be shared externally and used in Torq steps without using the inline function file.
Supported steps
You can return the response as a file for the following steps:
- Send an HTTP request
- Any step that you can switch to HTTP mode
Share a file outside of Torq
These instructions explain how to get a signed URL for a file stored in Torq in order to share outside of Torq.
- In the step Execution Options section, set the Return response as file toggle to Yes.
- Set the Shareable link toggle to Yes.
Example use case
This example shows how to use a non-shareable file URL in a subsequent step.
- Add the step Send an HTTP request step to the designer.
- Under Execution Options, set the Return response as file toggle to Yes.
- Run the step. The file URL is available in the step output in the Execution Log. The file URL can only be used in Torq steps.
- To extract data from the file, use this expression {{ file $.send_an_http_request.api_object.url }}
Use files in inline scripts
To access the content of a file in an inline script, you first need to apply the Get method to the file URL.
The example below shows a Python inline script, but the same applies to other scripting languages, such as JavaScript, Bash, and so on.
Use the file inline function for non-shareable file URLs that have the format: tqfile://steps/XXXXXXX.
Shareable URLs that don't require the file inline function: https://link.torq.io/***dEjnLCXnv7.
Upload a file using an HTTP request step
Use an HTTP request step to upload a Torq file to an external system.
- Add a Send an HTTP request step to the designer.
- Set the METHOD to POST.
- Add a header to the HEADERS section if you want the file to be interpreted in a specific format (for example, to suit the third-party service requirements).
- Key: content-type
- Value: file format
- Set the body CONTENT_TYPE parameter to raw binary.
- Set the BODY to the file URL. For example, {{ file $.prev_step_name.api_object.url }}. Use the file inline function for non-shareable links.