---
title: "Upload a file"
slug: "upload-a-file"
updated: 2025-09-26T20:56:19Z
published: 2025-09-26T20:56:19Z
canonical: "support.tulip.co/upload-a-file"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://support.tulip.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Upload a file

## Purpose

In this article, we'll cover the basics of working with Files in Tulip and the steps to be able to upload your files into apps. You'll learn the supported file formats and sizes as well as how to use the File Input Widget.

Say your users want a paper-free method to view documents and attach them to customer orders or search documents in an interactive table, the files feature allows you to do just that.

This feature adds the ability to work with files within the App Editor and the Tulip Player. Files in Tulip can be referenced in Tables, Triggers, and Analytics.

In addition, with the new File Widget you can view files directly in an app in many cases; whereas in other cases, you can download or open the file.

## Supported file formats

These are the supported file formats - pdf, stl, txt, xls, xlsx, doc, docx, step, stp, qif, nc, form, mp4, gif, png, svg, jpeg, and jpg.

### File upload limits

| File type | Limit |
| --- | --- |
| Images | 20 MB |
| Videos (i.e. .mp4) | 200 MB |
| All other files | 50 MB |

## File input widget

To add files into your app, use the File widget option located in the Toolbar. Click on “Input” and select the File option.

![File Input Widget](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Screen%20Shot%202022-10-11%20at%202.40.28%20PM.png)

## Files in tables

To add files to a Table, first ensure that you have a Field in your table for the file data type.

If you don’t, you can easily set this up by navigating to the table you want to include files into. Hover over the “Apps” tab in the top navigation bar and click “Tables”. Then, select the table you want to use and you will be directed to the info page for that table. Click the plus sign next to the last field; a field creation box will pop up. Select “File” as the data type, give your field a label, and click Save.

![Create File Field in Tables.gif](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Create%20File%20Field%20in%20Tables.gif)

There are two ways to upload a file into your Table. You can create a new Record or edit an existing record directly within your table by clicking the "Create Record" button at the top right of the Table info page.

![Create Record.png](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Create%20Record.png)

You can also configure your app to add a new record using the File Input Widget and a Variable that links to the corresponding table.

![File Input](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Screen%20Shot%202022-10-11%20at%202.45.36%20PM.png)

The datasource can be a variable or a Tulip table record. Apart from this, there are several customizable options available in the Widget pane for the File Input Widget.

When displaying a table record or variable with a file type, clicking on it will open the File in a new tab.

![Add File.gif](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Add%20File.gif)

### Examples

Here, we'll demonstrate how to load files into a table and then display that file from the Tulip Player.

![Load File.gif](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Load%20File.gif)

Next, we'll show how you can open a file within the same Tulip Player step.

![Load File2.gif](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Load%20File2.gif)

## Further reading

- [Adding Input Widgets to Normal Steps](https://support.tulip.co/docs/adding-input-widgets-to-normal-steps)
- [An Overview of Tables](https://support.tulip.co/docs/an-overview-of-tables)

---

Did you find what you were looking for?

You can also head to [community.tulip.co](https://community.tulip.co/?utm_source=intercom&amp;utm_medium=article-link&amp;utm_campaign=all) to post your question or see if others have solved a similar topic!

**Widget**

**Widgets**are the elements that make up a specific **App Step.**Widgets can display information to users, collect user input, or trigger app logic.

*Common widgets include: Interactive Tables, Number inputs, Machine attribute widgets, and more.*

**App Editor**

The web interface used for building applications. Where you design a user interface, add logic, and connect your applications to **Tables**. ![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Screen%20Shot%202022-09-13%20at%207.50.23%20AM.png)

**Tulip Player**

**Tulip Player** is the Windows/Mac executable program where users can run Tulip apps. Tulip player allows you to create a more seamless user experience by removing the need for a web browser and allows increased IT controls.

**Tulip Tables**

**Tulip Tables**are a global location to store your production data. Tables are made up of Records (rows). A single can be accessed from multiple apps or stations at the same time.

![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Tulip%20Tables%20Overview%20-%20Feature%20Overview.gif)

**Trigger**

**Triggers** are groups of logic that are tied to an app event, such as step open, timer, widget interaction, etc. App builders can add triggers to **widgets**, **machines**, **devices**, **apps**, and **steps**.

**Triggers** can contain **actions**, **transitions**, and **conditions**.

**Analytics**

**Analytics** are live updating graphs and metrics calculated based on app data, Table data, and machine data. Analytics can be embedded and dynamically filtered within an application.

![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/image-1662410510869.png)

**Widget Toolbar**

The **Widget Toolbar**Is the menu where widgets can be found and added to your application. ![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/toolbar.png)

**Tulip Tables**

**Tulip Tables** are a global location to store your production data. **Tables** are made up of **Records** (rows). A single can be accessed from multiple apps or stations at the same time. ![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Tulip%20Tables%20Overview%20-%20Feature%20Overview(1).gif)

**Table Record Field**

**Table Record Fields**are single columns within a **Tulip Table.**

![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Table%20Record%20Field(1).gif)

**Table Record**

A **Table Record** is a reference to a row in a **Tulip Table**. Table Records can be created either from the Table UI or from with an App Trigger.

To edit a record it must be loaded into a **Table Record Placeholder.**
