OTHER
Classify emailed job photos and reply with an accept-or-reject decision
Watches a field-ops inbox for emails with attached job photos, uses an AI vision model to verify the work matches the job description in the message.
How it runs
The automated pipeline, trigger to output.
- TriggerNew email with photo attachments in field-ops inboxGmail
- ActionExtract attachments and verify against job description with OpenAIOpenAI
- LogicBranch on approve vs reject
- OutputSend approval or itemized rework reply via GmailGmail
What it does
Some crews still send completion proof by email. This workflow monitors a shared Gmail inbox, pulls photo attachments out of incoming messages, and asks an OpenAI vision model whether the images satisfy the job described in the email body. It then sends an automatic reply: an approval confirmation, or a rejection that names exactly what is missing (wrong angle, work incomplete, no before/after).
When to use it
Use it for subcontractor or third-party crews who report by email rather than through your dispatch app, when you need a fast, consistent accept/reject reply instead of a manager triaging the inbox by hand.
How it works
- 1A new email in the field-ops Gmail inbox triggers the run.
- 2Photo attachments are extracted and the job description is read from the email body.
- 3OpenAI vision compares the photos against the description and returns approve or reject with reasons.
- 4A logic branch routes on the decision.
- 5Gmail sends an approval reply, or a reply listing the specific rework needed.
Set it up
What you configure once, before turning it on.
- 1Connect GmailRead, draft, send, label.
- 2Connect OpenAIModels, embeddings, files.
- 3Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
- 4Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
- 5Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.
More Other workflows
Sweep stale visitor check-ins, auto-checkout, and flag overdue guests
On a recurring schedule this finds visitors still marked on-site past their expected departure, auto-checks-out anyone past end-of-day.
Pre-register a visitor, email a QR badge, and alert the host on arrival
When a host submits a visitor pre-registration form, this creates a visitor record, emails the guest a scannable QR badge with arrival instructions.
Build a daily expected-visitor roster and send it to the front desk
Every morning this pulls the day's pre-registered visitors from Airtable, builds a sorted arrival roster with hosts and times.
Agent-Driven Full IVR Re-Voicing for a Rebrand
An agent takes a rebrand brief from Notion, audits every IVR prompt for old naming, rewrites and re-synthesizes the affected ones with ElevenLabs, archives them to Dropbox.
Sync IVR Prompt Registry in Airtable to Fresh ElevenLabs Audio
Runs nightly against an Airtable IVR prompt registry, finds rows whose script text changed since last synthesis, regenerates only those ElevenLabs clips.
Slack-Approved IVR Re-Voicing After a Product Rename
On demand from Slack, drafts updated IVR prompt scripts for a renamed product, posts them for human approval.
Run it inside a business
This workflow drops into a full company template. Import the org, and this is one of the playbooks its agents run.

Run this workflow in your colony.
14-day trial. No DevOps. No Sales call. Provisioned in under a minute.
