A project handoff should answer two questions: which files are approved for delivery, and where will the recipient find each one? Downloading every attachment in a working table often includes old drafts, internal notes, and files from unrelated projects.

This tutorial builds a small handoff workflow for a fictional community studio. A coordinator selects approved deliverables in Airtable, downloads their attachments into record-specific folders, and checks the package before sending it through the team’s usual delivery channel. Approval and sending remain deliberate human steps.

Define a small delivery package

Riverside Studio is finishing the Harbor Workshop project. Its handoff includes a print-ready flyer, a facilitator guide, and two room-layout images. An early flyer draft must stay out of the package. A second project, Garden Sessions, shares the same working table but must not appear in this download.

The target result is four files across three folders. That explicit expectation is more useful than simply checking that a ZIP file downloaded. The coordinator will compare the extracted package with a short delivery checklist before sharing it.

You need an Airtable base you can configure, a connected miniExtensions workspace, permission to download and share the chosen files, and a few harmless sample attachments. Check your plan’s applicable limits before using a larger project: the Free plan documentation currently limits Bulk Download Attachments to 10 records. Our five-record example stays within that test size.

Build Projects and Deliverables tables

Use one project record for each engagement, then link individual deliverables to it. A separate deliverable row gives the coordinator somewhere to record an approval decision without mixing approved and unapproved files in the same attachment cell.

TableFieldAirtable type and purpose
ProjectsProjectPrimary single line text, such as Harbor Workshop
ProjectsProject CodeSingle line text, such as HARBOR-01
DeliverablesDeliverablePrimary single line text describing the item
DeliverablesProjectLink to Projects; allow one project per deliverable
DeliverablesDelivery CodeSingle line text with a unique, human-assigned reference
DeliverablesStatusSingle select: Draft, Ready for Review, Approved
DeliverablesInclude in HandoffCheckbox for the coordinator’s selection
DeliverablesFilesAttachment field containing the deliverable files
DeliverablesReview NotesLong text for internal coordination; not part of the file package

The status choices, references, and checkbox are this workflow’s design, not an automatic approval system. Assign unique Delivery Code values yourself. For a revision that needs a different approval decision, add a separate deliverable row rather than putting both versions into the approved row’s Files cell.

Add representative records

  • HARBOR-01-FLYER: Harbor Workshop, Approved, included, one file named harbor-flyer-final.pdf.
  • HARBOR-01-GUIDE: Harbor Workshop, Approved, included, one file named facilitator-guide.pdf.
  • HARBOR-01-ROOM: Harbor Workshop, Approved, included, room-layout-front.png and room-layout-rear.png.
  • HARBOR-01-DRAFT: Harbor Workshop, Draft, not included, an early flyer PDF.
  • GARDEN-01-FLYER: Garden Sessions, Approved, included, its own flyer PDF.

Use fictional documents with recognizable headings so you can check the contents as well as the filenames. Do not use a sensitive customer package as your first test.

Create a view that expresses the handoff decision

In Deliverables, create a grid view named Harbor Workshop — Handoff. Configure an AND filter with four requirements: Project has any of the linked Harbor Workshop record; Status is Approved; Include in Handoff is checked; and Files is not empty.

The expected view contains exactly the first three example rows. The draft fails the approval and selection conditions. Garden Sessions fails the project condition even though it is approved and selected. Review the actual rows before continuing; a helpful view name does not establish that its filters are correct.

The download filtering guide documents selecting an existing Airtable view to restrict the records processed. Treat this view as a working selection, not a frozen delivery version or a new access-control boundary. Ask collaborators to avoid changing the selected rows while you prepare the package, then verify the extracted result.

Configure the attachment download

In the miniExtensions dashboard, choose the correct workspace and base, then select Create Extension. Find Bulk Download Attachments in the catalog and create it against Deliverables. Give the configuration a useful name, such as Harbor Workshop Handoff. The creation guide covers the workspace, base, catalog, table, and naming sequence.

Select Files under Attachment fields to download. In Bulk Download, enable Filtering and choose Harbor Workshop — Handoff. Older filtering instructions call this the Download Attachments section; the current settings guide uses Bulk Download. Do not use the individual-record download path for this three-row package.

For this first version, retain the source filenames. The Bulk Download product guide also describes naming downloaded copies from field values without renaming the Airtable originals. Keeping the existing names makes this example easier to inspect, especially when a row contains two different files.

Give each deliverable its own folder

In Configuration, choose the record-or-category folder option under Folder structure. Set Folder names to use an Airtable field, then choose Delivery Code as the Folder Name Field. The folder setup guide gives the exact option labels.

Because our codes are unique, each selected deliverable gets a separate folder. If two records share the chosen folder value, their files are grouped together. Use a category field instead only when shared category folders are intentional. Keep the sample codes free of slashes and punctuation that could be interpreted as paths.

Download, extract, and inspect

Use Download Attachments, wait for preparation, and extract the resulting archive locally. Check for the three expected folders and four files. Open every sample file: matching filenames alone do not prove that the right revision was delivered.

  • HARBOR-01-FLYER contains the final flyer PDF, not the early draft.
  • HARBOR-01-GUIDE contains the facilitator guide.
  • HARBOR-01-ROOM contains both layout images.
  • No folder or file belongs to Garden Sessions or HARBOR-01-DRAFT.

These are acceptance checks to perform in your own setup, not a claim that this example has been run for you. Record the checked package name, date, and responsible coordinator in your delivery process. Share the inspected archive through your normal approved channel; this walkthrough does not send it automatically.

Troubleshoot the package before sharing it

If a file is absent, first check its row against the selected view and confirm that Files is included in the download configuration. Multiple attachment fields can be selected, but this example deliberately uses one. An extra internal attachment field should not be selected merely because it exists.

Duplicate filenames can cause extraction trouble. Record-specific folders reduce collisions across rows, but still inspect multiple files within a row. Preserve file extensions and avoid problematic characters. A slash in a filename can create another folder level, as explained in the unexpected folders guide.

Large exports may take several minutes. Split a difficult package into smaller filtered batches rather than assuming there is a guaranteed maximum size or completion time. See the current settings and troubleshooting guide for download failures and limits.

Keep file delivery separate from a base backup

This handoff packages selected attachments. It does not reproduce the complete base, its relationships, review history, or configuration. Keep the Airtable records for ongoing coordination and the checked archive for the specific delivery. If the recipient needs an inventory of titles and references, prepare that separately and confirm it matches the files actually included.

A CSV export is not a substitute for the attachment package: the CSV attachment explanation distinguishes text links from the files themselves. The useful endpoint is a package someone can understand and inspect, with a clear human decision about what was approved and sent.