VideoAmp impressions check public producer templates.
Partial warning-only advice for the exact impression route shown by MetaRouter and PRX. Common template slots and supplied IP syntax are checked. MetaRouter mappings do not define universal receiver requiredness; opaque IDs, cachebuster values, custom fields, transport and duplicate selection remain open.
What this pack matches
Rules
Codes are stable. A finding in CI, MCP, or the playground lands on the same id.
| Field | Required | What it checks | Rule ids | Source |
|---|---|---|---|---|
url_id |
optional | The published impression route reserves a nonempty provisioned URL_ID path slot. Check only physical slot emptiness, without UUID, alphanumeric, account or equality claims. Presence diagnostic severity: warning. | vendor.videoamp-impression.param.url_id.empty |
docs |
path_vpxid |
optional | The published impression route reserves a nonempty provisioned VPXID path slot. Query/form fields cannot fill this slot. Values and path/query consistency remain opaque. Presence diagnostic severity: warning. | vendor.videoamp-impression.param.path_vpxid.empty |
docs |
vpxid |
recommended | The provisioned query ID appears in both published producer templates. Presence advice only: identifier grammar, empty values and equality with the opaque path slot remain unvalidated. Presence diagnostic severity: warning. | vendor.videoamp-impression.param.vpxid.missing |
docs |
bwb |
recommended | Provisioned tag setting included in both producer templates. Presence advice does not infer numeric type, batch meaning, bounds or account validity. Presence diagnostic severity: warning. | vendor.videoamp-impression.param.bwb.missing |
docs |
cb |
recommended | Both templates include a cachebuster slot. MetaRouter maps timestamp while PRX uses randomstr, so populated values stay opaque and no numeric, date or freshness rule is imposed. Presence diagnostic severity: warning. | vendor.videoamp-impression.param.cb.missing |
docs |
ip |
optional | MetaRouter maps context.ip to an IP-address string. Check only submitted populated literals. IP absence is permitted: PRX requires separate data-sharing context, and MetaRouter matching advice is not universal receiver requiredness. Presence diagnostic severity: warning. | vendor.videoamp-impression.param.ip.emptyvendor.videoamp-impression.param.ip.invalid |
docs |
Validate a payload
pixellint validate url "$ARTIFACT" --rulepack vendor/videoamp-impression
Try this failing payload in the playground. An example with a validation finding.
https://b.videoamp.com/d2///impression?vpxid=synthetic-vpx&bwb=synthetic-bwb&cb=synthetic-nonce&ip=192.0.2.1&cevt=future-event&app=synthetic-app&dnt=custom-optout-value&user_agent=SyntheticUA%2F1&cp1=opaque-campaign&us_privacy=&gpp=&gpp_sid=
cargo install pixellint
·
npm install pixellint