YouTube containsSyntheticMedia: the videos.insert field for AI video

videos.insert lists status.containsSyntheticMedia, a boolean on the videos resource. Sume returns the file; you set the flag in your own insert call.

4 min readSume
All posts

The videos.insert request page lists status.containsSyntheticMedia, and the videos resource shows it as a boolean inside status. That is the API field for the synthetic-media setting; Sume does not set it, because Sume hands you a finished file and the upload is your own call.

Field names are from YouTube's pages as read 2026-10-01. Which videos need the flag is a policy question, covered in what needs disclosure.

Where does the field sit in the request?

On the insert page it appears in the request list beside status.selfDeclaredMadeForKids and recordingDetails.recordingDate. In the resource it is a boolean under status. The snapshots show names and types only; they do not describe default behavior, so check the live reference before you rely on one.

containsSyntheticMedia on the YouTube pages, read 2026-10-01.
PageWhat it shows
videos.insertstatus.containsSyntheticMedia listed in the request
videos resourcecontainsSyntheticMedia as a boolean in status

What does Sume return for the upload?

For a direct video job the flow is submit, poll, then download from the content URL: GET /v1/videos/{jobId}/content, per Video generation. A Sume job flow also expects an Idempotency-Key on submit. Nothing in the output carries a YouTube flag, so keep your own record of which files were generated.

How do I keep the flag right across a batch?

Mark generated items in your own data, then pass the matching value when the uploader calls videos.insert. A bulk queue has no webhook of its own; communication.webhook_url is per item, and the queue is polled through its status_url, per Bulk runs. Your uploader can join the item result to its flag when each item finishes.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume