Integrations
Fotofolio inside DaVinci Resolve Studio: a 5-minute setup
A Python workspace script that puts Fotofolio's album media in Resolve's Media Pool and delivers finished films back to a client gallery.
DaVinci Resolve Studio has a real Python scripting API. We use it. The Fotofolio integration is two scripts that drop into Resolve's Scripts directory and show up under Workspace → Scripts.
Important: this is Resolve Studio only. The free version of Resolve has restricted scripting access and the integration won't work there. If you're on free Resolve, the Watch Folder helper is the path — see that walkthrough.
The two scripts
- Import from Fotofolio — list your albums, pick one, all its media is downloaded via short-lived presigned URLs and added to a new bin in your Resolve project's Media Pool.
- Deliver to Fotofolio — pick a rendered file (your finished cut), choose a destination album, upload directly to S3 via presigned PUT. Real progress in the script's console.
Setup
- Generate an access token. Fotofolio dashboard → Integrations → DaVinci Resolve → Generate token. Copy it.
- Download the script package. Same page. You get a small ZIP with two
.pyfiles. - Drop the scripts in Resolve's Scripts directory.
- macOS:
~/Library/Application Support/Blackmagic Design/DaVinci Resolve/Fusion/Scripts/Utility/ - Windows:
%APPDATA%\Blackmagic Design\DaVinci Resolve\Support\Fusion\Scripts\Utility\ - Linux:
~/.local/share/DaVinciResolve/Fusion/Scripts/Utility/
- macOS:
- Restart Resolve so it picks up the new scripts.
- Run one of them. Workspace → Scripts → Utility → ImportFromFotofolio. The first run prompts for your access token (paste it). It saves to
~/.fotofolio/resolve.jsonwith mode 0600 so other users on the box can't read it.
Workflow — wedding film, start to finish
How we use this for a typical wedding film delivery:
- Day before edit. Couple's raw footage already in their Fotofolio album (Watch Folder picks it up from the camera offload).
- In Resolve. Open the project. Workspace → Scripts → Utility → ImportFromFotofolio. Pick the couple's album. All clips land in the Media Pool under a new bin named after the album.
- Cut. Pre-trim, color, deliver-page settings — all the normal Resolve work.
- Render. Deliver page → start. Render to a folder you remember.
- Upload back. Workspace → Scripts → Utility → DeliverToFotofolio. Pick the rendered file. Pick the couple's client gallery as the destination. Hit confirm. The script uploads to S3 via presigned PUT — your render bytes don't go through our server.
What the scripts actually do
They're plain Python. You can read them. The key parts:
- Import side. Calls
GET /api/integrations/albumswith your bearer token to list your albums. Pick → callsGET /api/integrations/albums/[id]/photosto list media. For each item, callsGET /api/integrations/photos/[id]/downloadfor a presigned URL, downloads to a temp folder, then uses Resolve'sMediaPool.ImportMediato add it to the Media Pool. - Deliver side. Asks Fotofolio for a presigned
PUTURL via the integration upload endpoint, uploads the file directly, then calls finalize to create the photo row pointing at it. Poster is captured client-side (one frame, ~1s in).
Gotchas
- Free Resolve doesn't work. Mentioned above; bears repeating because most error reports we get are users trying this on free Resolve.
- First run prompts in the Resolve console. If you don't see the token prompt, open Workspace → Console first; the script reads from stdin.
- Big files take time. A 2 GB wedding film upload from a residential connection might take 10+ minutes. The script shows MB-per-second so you know it's alive.
- S3 ingress = free. We don't charge you for the upload bandwidth on top of the subscription.
What this isn't
The scripts don't auto-trigger renders, don't watch the Resolve project for changes, don't two-way sync. They're user-triggered: you run them when you want them. If you want a fully automatic flow, configure Resolve's Deliver page to render into a folder our Watch Folder helper watches — same outcome, no scripts.
Related
Ready to try this in your own workflow?
Free tier, no card. Or book a 30-minute walkthrough.