pixellint

vendor/mixpanel · vendor documented

Mixpanel's project token rides inside properties

The track endpoint posts a JSON array, not an envelope. There is no top-level api_key. The project token is properties.token on every event. A payload shaped like PostHog or Amplitude will not match this pack, and a Mixpanel-shaped payload with no token is an error.

token is properties.token

Not the HTTP header, not a root field. Mixpanel documents it inside the event properties object.

Rule: vendor.mixpanel.body.properties.token.missing

What this pack matches

Hosts
mixpanel.com
Paths
…/track…, …/import…
Vendor docs
docs.mixpanel.com/reference/track-event

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
event required Mixpanel documents the event name as required. Fix: Name the event, such as `Signed Up`. vendor.mixpanel.body.event.missing
vendor.mixpanel.body.event.empty
docs
properties required Mixpanel documents the properties object as required, since the project token rides inside it. Fix: Add a `properties` object carrying at least `token`. vendor.mixpanel.body.properties.missing docs
properties.token required It is the project token the event is attributed to. Fix: Send the project token from your Mixpanel project settings. vendor.mixpanel.body.properties.token.missing
vendor.mixpanel.body.properties.token.empty
docs
properties.distinct_id optional It identifies the user who performed the event. Without it the event is not tied to a person. Fix: Send the same `distinct_id` you use elsewhere for this user. vendor.mixpanel.body.properties.distinct_id.empty docs
properties.$insert_id optional Mixpanel uses it to drop duplicates, so a retried request is not counted twice. Fix: Send a stable id per event. vendor.mixpanel.body.properties.$insert_id.empty docs

Validate a payload

pixellint validate json @payload.json --rulepack vendor/mixpanel

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

cargo install pixellint · npm install pixellint