# Build customer photo reports from CompanyCam jobsite shots

> Search every jobsite photo in one place, pair your before and after shots, then send the homeowner a branded recap without leaving the app.

- Workflow type: app
- Services: CompanyCam, Google Drive, Gmail
- Categories: Operations, Sales
- Published: 2026-08-16

## What it does

- Gives you one photo search screen across your whole CompanyCam account, with filters for tag, date range, job, and the crew member who took the shot, so you stop opening projects one at a time to find the right pictures.
- Lets you pick your shots, pair them into before and after slots, and write a caption for each pair.
- Builds a branded report file, files it in a per customer folder in Google Drive, and creates a shareable link for it.
- Emails the finished report to the homeowner from your own Gmail account, then posts a note back on the job so the field crew can see the customer already got their recap.
- Keeps a Recent reports list for each rep, so you can reopen a past report, tweak it, and resend it.

## What you'll need

- A CompanyCam account with photos on your jobs. API access requires an admin login on a Pro, Premium, or Elite plan.
- A Google account for Drive, where the report files and customer folders are stored.
- A Gmail account to send the reports from. The homeowner receives the email from your address.
- Your logo and company details if you want the report branded.

## Prompt

I want an app for putting together customer facing photo reports from CompanyCam without digging through projects one at a time. The people using it are sales reps and project managers who need to send a homeowner a before and after recap once a job wraps up.

The main surface is a photo search screen that spans the whole account. Load photos with CompanyCam List All Photos, which is account wide and sorted most recently captured first. Give me filters for tag, date range, project, and the crew member who took the shot. Populate the filter dropdowns from List All Tags, List Projects, and List All Users so the options are the real ones on my account. Show results as a thumbnail grid. When I drill into a single job, switch the query to List Project Photos for that project instead.

List All Photos uses page and per_page pagination, so the grid must paginate or infinite scroll rather than trying to load the whole account at once. Each photo carries a uris array of renditions keyed by type: use the thumbnail rendition in the grid and the web or original rendition when composing the report file. Tag filtering works either by filtering against List All Tags or by reading List Photo Tags per photo, so pick whichever keeps the grid responsive and avoid firing a per photo request for every tile on screen.

From the grid I select the shots I want and send them to a report builder view. There I pair photos into before and after slots and write a caption for each pair. I should be able to reorder pairs, swap the two photos in a pair, remove a pair, and set the report title, customer name, and job address before building.

A Build Report action assembles a branded report file from the pairs and captions. It then creates a per customer folder in Google Drive with Create Folder, uploads the report into that folder with Upload File (Multipart), and generates a shareable link with Create Permission. Upload File (Multipart) only covers files up to 5MB, and photo heavy reports pass that easily, so fall back to Upload File (Resumable) when the assembled file is larger.

Once the report exists I can email it to the homeowner without leaving the app. Gmail has no single send with attachment operation, so the send path is Create a Draft with a base64url encoded RFC 2822 message followed by Send a Draft. Deliver the report as the Drive link plus a short written summary in the body rather than as a raw attachment. Let me review and edit the subject and body before it goes, and prefill both from the report title, customer name, and captions.

After the email sends, log what went out back onto the job with CompanyCam Add Project Comment, including the report name, the Drive link, and who sent it, so the field crew sees the customer already got their recap.

Keep a Recent reports list scoped per user. Persist each report's pairs, captions, title, customer details, Drive file and folder ids, share link, and send history, so a rep can reopen a past report, tweak the pairs or captions, rebuild it, and resend it. One rep should not see another rep's reports.

CompanyCam notes to build against: list endpoints return a bare JSON array rather than a wrapping envelope, created_at and updated_at are Unix epoch integers, and resource ids come back as strings. Rate limits are 240 GET and 100 POST per token per minute, so batch and cache the filter option lists rather than refetching them on every keystroke.

## How to customize

- Change the report layout and branding, including your logo, colors, and the cover page details.
- Set where reports are filed in Drive and how customer folders are named, plus who the share link is open to.
- Adjust the default email subject and message the homeowner receives, and decide whether it sends straight away or waits for you to review it first.
- Change the wording of the note posted back on the job, or turn that step off.

## FAQ

### Do I need to open each job to find photos?

No. The main screen searches photos across your entire account at once, which is the whole point of the app. You can still drill into a single job when you want only that job's photos.

### Can I filter by who took the photo?

Yes. The filters cover tag, date range, job, and crew member, and the options are pulled live from your own account, so you see your real tags, jobs, and team members.

### Does the homeowner need a CompanyCam or Google account to view the report?

No. The report is shared as a link that anyone can open in a browser, so the customer just clicks it in the email.

### Is the report sent as an attachment?

It is sent as a link rather than an attachment. Photo reports get large quickly, and a link avoids bouncing on the customer's mailbox size limits while letting you swap in an updated version later.

### Can I edit a report after it has gone out?

Yes. Every report you build is saved in your own Recent reports list. Open it, change the pairs or captions, rebuild it, and send it again.

### Will my whole team see my reports?

The Recent reports list is scoped to each user, so each rep sees the reports they built rather than everyone else's.

Use this prompt in General Input: https://www.generalinput.com/prompts/build-customer-photo-reports-from-companycam-jobsite-shots