AdVision identifies the advertiser, categories, safety signals and message in an ad. Publishers use video analysis in the Creative Library to review creatives, set rules and report on delivery. The partner API analyzes both videos and static images.
Reading Creative reports. Category and advertiser-domain dimensions reflect the stored AdVision result, even when it is not used to replace a demand partner's values. A creative can appear under several values, so those rows can add up to more than the overall total. Older analyses can lack QR or sensitive-category values, and older political or child-directed fields can show No without having been analyzed. Historical re-analysis is still in progress.
| Field | Presence | What it tells you |
|---|---|---|
| advertiser | always | Primary advertiser or brand. |
| adomain · adomain_confidence | always | Advertiser domain, and a 0.0–1.0 confidence in it. A domain you already know can be passed in and is preferred. |
| categories | always | IAB Content Taxonomy codes, tier 2 where possible (e.g. IAB2-3). |
| sensitive_categories · sensitive_categories_version | always | Zero or more of 18 exchange-agnostic values — alcohol, gambling, sports betting, lottery, tobacco, vaping, firearms, weapons, sexual and reproductive health, pharmaceuticals, supplements, nudity, pornography, cosmetic procedures, body modification, cannabis, CBD. An empty array means none detected. Versioned so the enum can grow without surprises. |
| advision_approved_for_families | always | Family-safe gate. |
| offensive_content · unreasonable_claims · acceptable_quality | always | Offensive or NSFW material; claims a reviewer would flag; overall quality flag. |
| split_ad | always | Several distinct ads stitched into one creative. |
| language · content_type | always | Language of the creative (ISO 639-1) and content type, e.g. advertisement. |
| duration · width · height | always | Duration in seconds (0 for a still image) and pixel dimensions. |
| transcription · summary_text | always | Spoken and on-screen text, and a short summary of the ad. |
| secondary_brands | always | Other brands that appear in the creative, each with website and category. |
| is_political · political{} | when detected | Political inventory: advertiser type (candidate, PAC, party, issue advocacy), the issues raised and the sentiment. |
| is_coppa · kids_content_score · coppa{} | when detected | Child-directed inventory: a 0.0–1.0 kids-content score, child-directed flag, data-collection, personalization and social-signup cues, and the rule results behind them. |
Political and COPPA blocks are attached on the same call only when the creative qualifies — no extra requests, and ordinary creatives carry no empty blocks. They are signals for your own review and rules, not a legal certification. New fields may be added over time; ignore keys you do not know.
Pipelines that always need the political or COPPA block can call the dedicated /analyze/creative/political and /analyze/creative/coppa endpoints instead; same key, same body, same polling. Write to support@elementaltv.com for a key.
Sensitive-category controls and expanded Creative reports are available in the ElementalTV App. The Creative Library analyzes eligible linear and non-linear videos. The partner API also analyzes static images; bringing that image analysis into the library remains future work.