Proof client shoots and hand off the delivery album in one place
Review every frame in a shoot, mark keeps and cuts with notes, and let an agent build the client album and draft the handoff email for you.
Build me a proofing and delivery desk for client photo shoots, so picking selects stops happening over email threads and shared drive links. Two kinds of people use it: photographers and editors who review frames, and whoever runs delivery for the studio.
Important constraint to design around. This Google Photos connection is app created data only. It reads and edits only albums and media items that were created through this platform's Google credential, so the shoot albums this app lists are ones that arrived by upload or by an intake automation running on this same connection. It cannot browse a pre-existing personal Google Photos library, so do not build any view or copy that promises that.
The home view is a grid of shoot cards, one per album, from List Albums, with Get Album for per album detail like the cover photo and the media item count. Each card shows the shoot title, a thumbnail, the frame count, how many frames each reviewer still has left to review, and a delivery status. Delivery status is read back from Airtable with List Records against a delivery log table, so a card either says delivered on a date with a link to the client album, or not delivered yet.
Opening a shoot goes to a large thumbnail review grid. Load the frames with Search Media Items scoped to that album id, paging through with the page token. Thumbnails need to be big enough to actually judge a frame on. On each frame the reviewer marks keep or cut and can leave a short note, for example crop tighter or eyes closed. Keyboard shortcuts for keep, cut and next frame make a long shoot bearable. Google Photos baseUrl values expire, so refetch media item data when the grid loads rather than storing thumbnail urls, and append a sizing parameter such as =w600 for the grid and a larger one for the single frame view.
Every reviewer's keeps, cuts and notes are stored per user inside the app, keyed by user and media item id. A photographer and an editor both passing over the same shoot must never overwrite one another, and each should see their own marks when they open the grid. The shoot header shows how many frames each person has left to review, so it is obvious when a second pass is still outstanding. On the single frame view show both reviewers' notes together, so disagreements are visible rather than buried.
When reviewers disagree on a frame, default the delivery set to the frames that every reviewer who has passed marked keep, and let the person preparing delivery switch to include anything at least one of them kept. Show the resulting count on the button so it is clear what is about to be delivered.
A Prepare delivery button on a shoot runs a background agent, taking the agreed selection set as its input. The agent creates a clean client album with Create Album, adds the selected frames to it with Add Media Items to Album, writes a short intro paragraph into the album as a text enrichment with Add Enrichment to Album, writes a caption onto each select with Update Media Item, and sets a hero cover with Update Album choosing the strongest frame. Copying here means adding the same app created media items to a second album, not duplicating files, so no extra storage is used and the frames stay linked to the original shoot. Albums cap at 20,000 items, so if a delivery set ever exceeded that, split into a second album rather than failing.
The agent then drafts the client handoff email with Gmail's Create a Draft, referencing the shoot, the number of delivered frames and the client album link. Leave it as a draft and do not send it, because nobody wants an agent emailing a client unreviewed. Surface the draft link in the app so a person can open, read and send it from Gmail themselves. Finally the agent logs the delivery to Airtable with Create Records: shoot name, client album link, frame count, who reviewed, delivery date and the draft link. That row is exactly what the shoot cards read back later with List Records.
While the agent runs, show progress on the shoot card, and when it finishes show where everything landed: the new client album, how many captions were written, the Gmail draft link and the Airtable row. If a reviewer has not finished their pass yet, warn before preparing delivery, since the whole point is that both passes are in before anything goes to the client.
What does this prompt do?
- Lists every shoot as a card showing the frame count, how many frames each reviewer still has left, and whether it has already gone out to the client
- Opens a shoot into a large thumbnail grid where you mark each frame keep or cut and leave a note like crop tighter or eyes closed
- Keeps each reviewer's picks and notes separate, so a photographer and an editor can both pass over the same shoot without overwriting each other
- Builds the client album on request: pulls in the selects, writes an intro and captions, sets a cover image, drafts the handoff email and logs the delivery
- Reads delivery history back onto the shoot cards, so the team can see what has already been sent and when
What do I need to use this?
- A Google Photos account connected here, with shoot albums that were created through this connection by an upload or an intake automation. Albums already sitting in a personal Google Photos library are not visible to this app
- A Gmail account, used to leave the client handoff email waiting in your drafts
- An Airtable base with a table for delivery history
- Everyone who reviews shoots invited to the app, so each person gets their own set of picks
How can I customize it?
- Change what counts as ready to deliver, for example requiring two full reviewer passes before the Prepare delivery button turns on
- Choose whether the delivery set is only the frames every reviewer kept, or anything at least one of them kept
- Adjust the tone and length of the intro paragraph and the captions written onto each select
- Change which details get logged as delivery history, such as client name, shoot date, or invoice number
FAQs
Will this work with the photos already in my Google Photos account?
Can a photographer and an editor review the same shoot at the same time?
Does it email the client automatically?
Does building the client album duplicate my photos?
How many photos can one shoot hold?
Related templates
Search creators for free, shortlist the best with your team, and spend an audit credit only when you decide someone is worth a closer look.
A calibration board that lines up every candidate's answer to the same question, hides names until your panel has scored, and writes the agreed rating back.
Search three months of global coverage on your topic, rank the outlets actually writing about it, and draft a tailored pitch for each one.
Open one board every morning to see every outstanding quote by age and value, decide on each one, and send follow-ups only after you approve them.
Open one board each morning to see which of your facilities, suppliers and shipping lanes are sitting near trouble in the news right now.
See every HoneyBook project's booked revenue next to what actually landed in your bank, chase what is late, and bill the next payment in one click.
Stop running selects through email threads.
Give every shoot one review screen, keep each reviewer's picks separate, and let the client album and handoff email build themselves.