download dots
Taskade Genesis

Let People Send Files to Your App

Updated 2026-07-27·9 min read

Overview

Your published app can take files from the people who use it. A field tech snaps a photo of a signed work order and attaches it to the job. A client drops a countersigned agreement into your portal. A vendor uploads a certificate of insurance. Each file is saved with that person's submission, lands in the Media tab in your workspace where you can open it, and the automation behind the form reads what is inside it.

TL;DR: Ask Taskade Genesis for an upload control and the people using your published app can send a signed contract, a site photo, or a supplier invoice. The file is saved with their submission, lands in the Media tab in your workspace, and the next automation step reads what is inside it. Build the app →

Two Kinds of File, Two Different Jobs

Get this distinction straight once and the rest of the page reads easily.

Files you attach in the builder Files your app's users send
Who attaches it You, while you build Clients, techs, vendors, applicants
What it is for Teaching Taskade Genesis how to build: a brand guide, a screenshot of a layout you like, a CSV of your existing customers Data your app reads and acts on: a signed contract, a receipt, a resume
When it happens Before you publish Every day after you publish
Where to read more App Context This page

A brand guide you paste into the prompt box shapes the app. A receipt your client uploads next Tuesday becomes a row.

Ask for the Upload Control When You Build

Describe the upload the same way you describe any other field. Name who sends the file, what kind of file it is, and what should happen to it.

Open Taskade Genesis and put all three in one sentence: "Add a document upload to the intake form. Clients attach their signed agreement, and the app reads the agreement and fills in the start date on their row." Taskade Genesis renders the control, wires it to the form, and builds the automation behind it.

If the app is already live, ask for it in a follow-up prompt. The upload control lands in the same form your visitors already use, and you re-publish from the same Publish panel.

What the person using your app sees

A drop zone on the form, sitting with the rest of the fields. They browse or drag, the file name appears, and they submit.

┌────────────────────────────────────────────────────────────┐
│  Client Portal  ›  Submit a Document                       │
├────────────────────────────────────────────────────────────┤
│  Your name        [ Maria Cole                        ]    │
│  Document type    [ Signed agreement            ▾     ]    │
│                                                            │
│  Attach a file                                             │
│  ┌──────────────────────────────────────────────────────┐  │
│  │   Drop a file here, or browse                        │  │
│  │   PDF · PNG · JPG · HEIC · DOCX · XLSX               │  │
│  └──────────────────────────────────────────────────────┘  │
│  ● agreement-signed.pdf                       [ Remove ]   │
│                                                            │
│                                       [ Submit ]           │
└────────────────────────────────────────────────────────────┘

Nothing to install and no account required, unless you want one. Turn on App Users and every upload arrives attached to a named, signed-in person instead of an anonymous submission, which is what you want when the file is a contract or a resume.

Where the File Goes Afterwards

The file arrives as a real stored file, not a name in a text box. Two things happen to it:

  1. It travels with the submission into the automation, so the next step can open it.
  2. It lands in the Media tab in your workspace, where you can find it, preview it, and reuse it. See the Media tab.

That means you always have the original. When a client asks which version of the agreement they sent, open the file and look.

The same holds for a file posted to a webhook trigger. Form and webhook are the two paths that carry a stored file into your automation.

What an Automation Does With It Next

Put a Convert File to Text step right after the trigger. It hands the document's words to whatever comes next.

  1. Open the Automations tab and pick the automation behind your form. See AI Forms for trigger settings.
  2. Click + and add Convert File to Text, pointing it at the uploaded file. See Convert File to Text.
  3. Add an AI step and write the Prompt: name the fields you want back, such as client name, start date, and total. Fill in the Prompt and leave the optional input blank. The step reads what the step before it handed over.
  4. Add Add Row to Project so each document becomes a record you can sort and filter. See Build a Form with Conditional Logic for the branching version.

Scanned paperwork and photos of paper are read in that same Convert File to Text step. There is no toggle, no setting, and no extra step for the person uploading. A photograph of a delivery note goes in and the words come out. The reading described here belongs to that step, so build the path through it rather than asking an agent about the file in chat.

💡 Start small. Build one form, run one real document from your own files through it, and open the automation's History tab to see exactly what the text step returned. Then open it to your clients.

Which File Types Work

What someone sends What your app gets back
Scanned or image-only PDF The words off each page, as text the next step can read
Phone photo of paper (JPG, JPEG, HEIC, HEIF) The words in the photo, as text
Screenshot or image (PNG, WebP) The words in the image, as text
Typed PDF The document text
Word document (DOCX) The document text
Slide deck (PPTX, PPT) The text off the slides
Spreadsheet (XLSX, XLS) or CSV The cell contents as text
EPUB, TXT, Markdown The full text

HEIC and HEIF are what an iPhone camera produces, so a tech photographing a work order on site needs to change nothing on the phone. GIF and BMP sit outside the reading path, so ask for a PNG or a JPG when the words on the image matter.

Keep scans and photos under 20 MB

20 MB is the ceiling for reading the words off an image, so it is the number that matters for a scanned contract or a photographed receipt. A long scan at maximum camera resolution is the one to watch. If you collect those routinely, say so in the field label on the form so the person uploading picks the right export.

A typed PDF, a slide deck, and a spreadsheet are read as text rather than off an image, so that ceiling does not apply to them. What limits those is the upload size your plan allows, which is larger on every paid plan than on Free. See pricing.

Prompts That Add Uploads to Your App

Each of these is a complete instruction. Say who uploads, what they send, and what the app does with it.

"Add a section where clients upload their signed contract, then read the contract and fill in the start date on their row."

"Let each field tech attach a photo of the signed work order when they close a job. Read the customer name and the date off the sheet and stamp them on the job record."

"Add a receipt upload to the expense form. Read the vendor, the date, and the total, then add a row to the Expenses project and file it under the right category."

"On the vendor portal page, let each vendor upload their certificate of insurance. Read the expiry date and put it in the Expires column so I can sort by what lapses first."

"Add a resume upload to the application form. Read the resume, fill in years of experience and current title on the candidate's row, and keep the file attached to that row."

Run one, look at the row it produces, then tighten the Prompt on the AI step until the fields land the way you want. See Automate for what else can hang off the same trigger.

Was this helpful?