Review-photo UGC moderation
Score customer-uploaded review photos for visible manipulation before they're attached to ratings, complaints, or marketplace-listing trust signals. A generated 'photo of the broken product' is the next-gen extortion pattern; the gate catches it before it triggers a chargeback.
Business value
- Hardens product-review systems against the rising pattern of generated 'evidence photos' attached to one-star reviews and refund requests.
- Protects sellers from extortion-style refund requests where the 'damaged item' photo is generated.
- Maintains trust in the review-with-photo signal that buyers weigh heavily in purchase decisions.
Agent job to be done
Be a review-system trust layer. Allow photos that read as authentic phone-camera captures of real items. Hold photos with manipulation cues. Reject photos that are obviously generated alongside review-text signals that suggest extortion.
format: product_reviewintended_use: moderatedomain: UGC review photo moderation
When to call VeracityAPI
On every photo attached to a review submission, refund request, or complaint escalation. Re-run on photo replacements.
What image URL to submit
Public HTTPS image URL for the review photo. The original submission resolution matters — platform-recompressed versions can mask cues.
Decision policy
- allow: low risk AND submission is consistent with the user's review history.
- revise: medium risk — prompt the user to upload an additional photo or video showing the same item from a different angle.
- human_review: high risk, OR review text combined with photo indicates a refund request, OR the user account has prior review-fraud signals.
- reject: visible heavy manipulation combined with extortion-pattern language ('refund me or this review stays up').
Request template
The exact payload shape this use case sends. The sample below uses representative content for this workflow; substitute your own.
curl https://api.veracityapi.com/v1/analyze \
-H "Authorization: Bearer $VERACITY_API_KEY" \
-H "Content-Type: application/json" \
-d '{"type":"image","content":"https://veracityapi.com/demo/influencer-beauty-tonic.jpg","context":{"format":"product_review","intended_use":"moderate","domain":"UGC review photo moderation"},"store_content":false}'Automation recipe
- Review worker receives the submission (text + photos).
- Score each photo with intended_use=moderate.
- Aggregate signals with the review text scoring — high-risk photo + extortion language = elevated handling priority.
- Allow-tagged reviews publish.
- Held reviews route to a moderator with the evidence pinned and the user's history surfaced.
Evidence spans agents should inspect
- 'synthetic_damage' — generated 'damaged item' photos with characteristic artifacts
- 'composite_packaging' — products in 'received-this-broken' packaging contexts that don't render naturally
- 'metadata_strip' — photos arriving without phone-camera EXIF where it would be expected
- 'recycled_imagery' — photos that appear on other product reviews across the platform
Policy pseudocode
if (result.recommended_action === "allow") continueWorkflow(); if (result.recommended_action === "revise") rewriteWith(result.evidence, result.recommended_fixes); if (result.recommended_action === "human_review") queueForHumanReview(result); if (result.recommended_action === "reject") discardOrRebuild();
KPIs to track
- % of review photos held for additional verification
- extortion-pattern detection rate (combined photo + text signals)
- false-positive rate on legitimate angry reviews (high here = thresholds need recalibration)
- review-fraud refund-loss avoidance
- median time-to-publish for clean reviews
What can go wrong
- Angry customers often take poor-quality phone photos that can trip 'composite_seam' or 'lighting_mismatch' falsely. The gate works best when paired with user-history signals.
- Phone EXIF stripping by platforms is increasingly common. 'Metadata strip' is a prompt to verify by other means, not proof of manipulation.
- The bar for rejecting a review is high — review-rejection backlash can be worse than the bad review. Bias toward hold + verify rather than auto-reject.
Cost and latency notes
Image analysis is a flat $0.02 per image. The endpoint accepts HTTPS image URLs, stores no image bytes, and logs only a URL hash plus hostname. Current v0.1 latency is vision-model-bound, so preflight balance and retry carefully.
Agent evaluation checklist
- Does this workflow have a costly failure mode from manipulated or synthetic-looking visuals?
- Can the agent store evidence categories without storing raw image bytes or full URLs?
- Should this workflow fail open, fail closed, or queue human review if image scoring is unavailable?
- Which field drives policy: recommended_action, risk_level, content_trust_score, or synthetic_image_risk?
- What local provenance check should complement the API score?