vendor/quora-conversions-api · vendor documented
Quora Conversion API events need account_id and a PixelCategory name
Quora documents POST /ads/v0/conversion on api.quora.com. account_id is the Ads account. conversion.event_name is one of the PixelCategory names such as Purchase or Generic.
conversion.click_id is the qclid from the landing URL. Events without it are accepted but cannot be attributed to a click. Browser pixels on q.quora.com have no published query table, so they stay directory-only.
account_id is required on the Conversion API request
Quora documents account_id as required. A payload that only carries conversion.event_name is incomplete.
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 |
|---|---|---|---|---|
account_id |
required | It is the Quora Ads account id. Quora documents it as required on the Conversion API request. Fix: Set `account_id` to the Ads account id from Quora Ads Manager. | vendor.quora-conversions-api.body.account_id.missingvendor.quora-conversions-api.body.account_id.empty |
docs |
conversion.event_name |
required | It is the conversion event name. Quora documents a fixed PixelCategory set on the Conversion API. Fix: Use a documented name such as `Purchase` or `Generic`. | vendor.quora-conversions-api.body.conversion.event_name.missingvendor.quora-conversions-api.body.conversion.event_name.emptyvendor.quora-conversions-api.body.conversion.event_name.invalid |
docs |
conversion.click_id |
recommended | It is the Quora click id (`qclid`). Quora documents it as the match key for ad attribution. Events without it are accepted but cannot be attributed to a click. Fix: Send `conversion.click_id` as the `qclid` from the landing-page URL or `quora_qclid` cookie. | vendor.quora-conversions-api.body.conversion.click_id.missingvendor.quora-conversions-api.body.conversion.click_id.empty |
docs |
conversion.event_id |
optional | It identifies the event so Pixel and CAPI can deduplicate. Quora documents sharing the same `event_id` across both. Fix: Send a stable `conversion.event_id` on both the pixel and the Conversion API call. | vendor.quora-conversions-api.body.conversion.event_id.empty |
docs |
conversion.value |
optional | It is the conversion value. Quora's Conversion API tag sends it as a number. Fix: Send a number such as `129.99`, with no currency symbol. | vendor.quora-conversions-api.body.conversion.value.emptyvendor.quora-conversions-api.body.conversion.value.invalid |
docs |
conversion.timestamp |
optional | It is the event time. Quora's Conversion API tag sends microseconds since epoch. Fix: Send an integer timestamp. The official tag uses microseconds. | vendor.quora-conversions-api.body.conversion.timestamp.emptyvendor.quora-conversions-api.body.conversion.timestamp.invalid |
docs |
device.user_agent |
optional | It is the device user agent. Quora's Conversion API tag sends it unhashed when the client provides it. Fix: Send `device.user_agent`, or drop the empty pair. | vendor.quora-conversions-api.body.device.user_agent.empty |
docs |
device.referer |
optional | It is the page referrer. Quora's Conversion API tag uses the `referer` spelling. Fix: Send `device.referer`, or drop the empty pair. | vendor.quora-conversions-api.body.device.referer.empty |
docs |
device.language |
optional | It is the device language. Quora's Conversion API tag sends it when the client provides it. Fix: Send `device.language`, or drop the empty pair. | vendor.quora-conversions-api.body.device.language.empty |
docs |
device.mobile_device_id |
optional | It is the mobile advertising id. Quora's Conversion API tag sends it when the client provides it. Fix: Send `device.mobile_device_id`, or drop the empty pair. | vendor.quora-conversions-api.body.device.mobile_device_id.empty |
docs |
Validate a payload
pixellint validate json @payload.json --rulepack vendor/quora-conversions-api
Try this failing payload in the playground. Quora Conversion API missing account_id.
{"conversion":{"event_name":"Purchase","click_id":"qclid-example-1"},"user":{}}
cargo install pixellint
·
npm install pixellint