iSpot impression GIFs need a TC tracking code in the path
iSpot documents the impression pixel as /v2/TC-####-#.gif. The tracking code is client-specific. Query extras such as campaignid are optional. TV conversion GIFs on pt.ispot.tv are vendor/ispot-conversion.
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 |
|---|---|---|---|---|
tracking_code |
required | It is the client-specific tracking code. iSpot documents the impression pixel path as /v2/TC-####-#.gif. Fix: Put the tracking code from iSpot in the path so it reads /v2/TC-{account}-{pixel}.gif. | vendor.ispot.param.tracking_code.missingvendor.ispot.param.tracking_code.emptyvendor.ispot.param.tracking_code.invalid |
docs |
campaignid |
optional | iSpot documents campaignid as a string with at most 64 characters. Maximum decoded characters: 64. | vendor.ispot.param.campaignid.emptyvendor.ispot.param.campaignid.invalid |
docs |
channel |
optional | iSpot documents channel as a string with at most 16 characters. Maximum decoded characters: 16. | vendor.ispot.param.channel.emptyvendor.ispot.param.channel.invalid |
docs |
cid |
optional | iSpot documents cid as a string with at most 128 characters. Maximum decoded characters: 128. | vendor.ispot.param.cid.emptyvendor.ispot.param.cid.invalid |
docs |
creativeid |
optional | iSpot documents creativeid as a string with at most 64 characters. Maximum decoded characters: 64. | vendor.ispot.param.creativeid.emptyvendor.ispot.param.creativeid.invalid |
docs |
creativename |
optional | iSpot documents creativename as a string with at most 64 characters. Maximum decoded characters: 64. | vendor.ispot.param.creativename.emptyvendor.ispot.param.creativename.invalid |
docs |
customdata |
optional | iSpot documents customdata as a string with at most 256 characters. Maximum decoded characters: 256. | vendor.ispot.param.customdata.emptyvendor.ispot.param.customdata.invalid |
docs |
devicetype |
optional | iSpot documents devicetype as a string with at most 16 characters. Maximum decoded characters: 16. | vendor.ispot.param.devicetype.emptyvendor.ispot.param.devicetype.invalid |
docs |
placementid |
required | iSpot documents placementid as a string with at most 64 characters. Required for the documented reporting contract; the guide also permits a bare base pixel. Presence diagnostic severity: warning. Maximum decoded characters: 64. | vendor.ispot.param.placementid.missingvendor.ispot.param.placementid.emptyvendor.ispot.param.placementid.invalid |
docs |
placementtype |
optional | iSpot documents placementtype as a string with at most 32 characters. Maximum decoded characters: 32. | vendor.ispot.param.placementtype.emptyvendor.ispot.param.placementtype.invalid |
docs |
platform |
required | iSpot documents platform as a string with at most 7 characters. Required for the documented reporting contract; the guide also permits a bare base pixel. Presence diagnostic severity: warning. Maximum decoded characters: 7. | vendor.ispot.param.platform.missingvendor.ispot.param.platform.emptyvendor.ispot.param.platform.invalid |
docs |
publisher |
required | iSpot documents publisher as a string with at most 64 characters. Required for the documented reporting contract; the guide also permits a bare base pixel. Presence diagnostic severity: warning. Maximum decoded characters: 64. | vendor.ispot.param.publisher.missingvendor.ispot.param.publisher.emptyvendor.ispot.param.publisher.invalid |
docs |
segment |
optional | iSpot documents segment as a string with at most 128 characters. Maximum decoded characters: 128. | vendor.ispot.param.segment.emptyvendor.ispot.param.segment.invalid |
docs |
Validate a payload
pixellint validate url "$ARTIFACT" --rulepack vendor/ispot
Try this failing payload in the playground. iSpot impression GIF missing tracking code.
https://pi.ispot.tv/v2/.gif
cargo install pixellint
·
npm install pixellint