pixellint

Adnami trackers retain custom event names and validate SDK telemetry.

The public Adnami SDK constructs creative, source URL and session fields, then sends image GET or beacon POST requests. These checks describe the inspected producer.

Custom event names remain open. Metadata strings, base64 custom data and unpublished collector semantics are not treated as a closed server schema.

Apply the contracts within their published source scope.

Custom event names remain open. Metadata strings, base64 custom data and unpublished collector semantics are not treated as a closed server schema.

What this pack matches

Hosts
functions.adnami.io
Paths
/api/tracker
Vendor docs
macro.adnami.io/macro/gen/adnm.ads.v2.js

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
ev required SDK event name. Public trackEvent accepts custom names. Evidence: vendor template. vendor.adnami-tracker.param.ev.missing
vendor.adnami-tracker.param.ev.empty
docs
cc required SDK creative code, including its all-zero error-report code. Evidence: vendor template. vendor.adnami-tracker.param.cc.missing
vendor.adnami-tracker.param.cc.empty
vendor.adnami-tracker.param.cc.invalid
docs
cs required SDK source URL after decoding. Evidence: vendor template. vendor.adnami-tracker.param.cs.missing
vendor.adnami-tracker.param.cs.empty
vendor.adnami-tracker.param.cs.invalid
docs
_ required SDK event timestamp from Date.now. Evidence: vendor template. vendor.adnami-tracker.param._.missing
vendor.adnami-tracker.param._.empty
vendor.adnami-tracker.param._.invalid
docs
sid required SDK opaque session ID, with numeric error-report IDs also supported. Evidence: vendor template. vendor.adnami-tracker.param.sid.missing
vendor.adnami-tracker.param.sid.empty
docs
sit required SDK session creation timestamp from Date.now. Evidence: vendor template. vendor.adnami-tracker.param.sit.missing
vendor.adnami-tracker.param.sit.empty
vendor.adnami-tracker.param.sit.invalid
docs
t optional SDK numeric field: Elapsed event time. Evidence: vendor template. vendor.adnami-tracker.param.t.empty
vendor.adnami-tracker.param.t.invalid
docs
ww optional SDK numeric field: Viewport width. Evidence: vendor template. Minimum numeric value: 0. vendor.adnami-tracker.param.ww.invalid docs
wh optional SDK numeric field: Viewport height. Evidence: vendor template. Minimum numeric value: 0. vendor.adnami-tracker.param.wh.invalid docs
aw optional SDK numeric field: Ad width. Evidence: vendor template. Minimum numeric value: 0. vendor.adnami-tracker.param.aw.invalid docs
ah optional SDK numeric field: Ad height. Evidence: vendor template. Minimum numeric value: 0. vendor.adnami-tracker.param.ah.invalid docs
vs optional SDK numeric field: Viewed surface. Evidence: vendor template. vendor.adnami-tracker.param.vs.empty
vendor.adnami-tracker.param.vs.invalid
docs
vsw optional SDK numeric field: Viewed surface weight. Evidence: vendor template. vendor.adnami-tracker.param.vsw.empty
vendor.adnami-tracker.param.vsw.invalid
docs
vr optional SDK numeric field: Visible percentage. Evidence: vendor template. Minimum numeric value: 0. Maximum numeric value: 100. vendor.adnami-tracker.param.vr.invalid docs
dist optional SDK numeric field: Distance. Evidence: vendor template. vendor.adnami-tracker.param.dist.empty
vendor.adnami-tracker.param.dist.invalid
docs
sw optional SDK numeric field: Slot width. Evidence: vendor template. Minimum numeric value: 0. vendor.adnami-tracker.param.sw.invalid docs
sh optional SDK numeric field: Slot height. Evidence: vendor template. Minimum numeric value: 0. vendor.adnami-tracker.param.sh.invalid docs
ff optional SDK numeric field: Format factor. Evidence: vendor template. vendor.adnami-tracker.param.ff.empty
vendor.adnami-tracker.param.ff.invalid
docs
md optional SDK metadata string. Caller strings need not be JSON. Evidence: vendor template. docs
cd optional SDK custom data encoded with btoa(JSON.stringify(value)). Evidence: vendor template. docs
aid optional Ad unit identifier. Evidence: vendor template. docs
app optional Application label. Evidence: vendor template. docs
pf optional SDK platform detection. Evidence: vendor template. docs
wd optional SDK webdriver detection. Evidence: vendor template. docs
dev optional Device label. Evidence: vendor template. docs
sz optional Size label. Evidence: vendor template. docs
v optional SDK version. Evidence: vendor template. docs
optional Custom data must decode as JSON using the SDK Latin-1 btoa encoding. The SDK serializer admits any JSON value. Decoded body source: cd. Encoding: base64_latin1_json. Evidence: vendor template. docs
method required Published SDK uses Image GET or sendBeacon POST, without requiring a body or Content-Type. Complete HTTP capture contract. Evidence: vendor template. vendor.adnami-tracker.http.method.missing
vendor.adnami-tracker.http.method.empty
vendor.adnami-tracker.http.method.invalid
docs

Validate a payload

pixellint validate url "$ARTIFACT" --rulepack vendor/adnami-tracker

Or paste it into the playground. Same engine, in the browser, nothing sent anywhere.

cargo install pixellint · npm install pixellint