{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://www.shobusac.com/conversion-event.json",
  "title": "Shobu's privacy-safe website conversion event",
  "description": "Allowlisted, non-contact fields sent for website conversion measurement. Events exclude form contents, contact details, query strings, full referrers, cookies, and persistent cross-visit identifiers.",
  "type": "object",
  "additionalProperties": false,
  "required": ["schemaVersion", "eventId", "conversion", "path", "pageGroup", "placement", "deviceClass", "occurredAt"],
  "properties": {
    "schemaVersion": { "const": "1.0" },
    "eventId": { "type": "string", "minLength": 8, "maxLength": 120, "description": "Ephemeral per-event identifier used only for delivery deduplication" },
    "conversion": { "type": "string", "enum": ["phone_call", "estimate_start", "estimate_form_start", "estimate_form_abandon", "estimate_submit", "estimate_submit_failed", "service_request_start", "service_form_start", "service_form_abandon", "service_request_submit", "service_submit_failed"] },
    "path": { "type": "string", "pattern": "^/[^?#]*$" },
    "pageGroup": { "type": "string", "enum": ["home", "air-conditioning", "refrigeration", "service-area", "intake", "company"] },
    "placement": { "type": "string", "enum": ["page", "header", "hero", "content", "footer", "mobile_sticky", "chat", "dialog", "form", "sheet"] },
    "deviceClass": { "type": "string", "enum": ["mobile", "tablet", "desktop"] },
    "occurredAt": { "type": "string", "format": "date-time" }
  },
  "x-personal-data": false,
  "x-persistent-identifier": false
}
