{
  "type": "object",
  "properties": {
    "billing_event": {
      "type": [
        "string",
        "null"
      ]
    },
    "billing_quantity": {
      "type": "integer",
      "minimum": 0,
      "maximum": 1
    },
    "booking_link_count": {
      "type": "integer",
      "minimum": 0
    },
    "checked_at": {
      "type": "string",
      "format": "date-time"
    },
    "company_website": {
      "type": [
        "null",
        "string"
      ]
    },
    "completed_at": {
      "type": "string",
      "format": "date-time"
    },
    "contact_page_count": {
      "type": "integer",
      "minimum": 0
    },
    "coverage_complete": {
      "type": "boolean"
    },
    "downloaded_bytes": {
      "type": "integer",
      "minimum": 0
    },
    "duration_ms": {
      "type": "integer",
      "minimum": 0
    },
    "email_count": {
      "type": "integer",
      "minimum": 0
    },
    "error_code": {
      "type": [
        "null",
        "string"
      ]
    },
    "error_message": {
      "type": [
        "null",
        "string"
      ]
    },
    "http_request_count": {
      "type": "integer",
      "minimum": 0
    },
    "observed_signal_count": {
      "type": "integer",
      "minimum": 0
    },
    "pages_checked": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "phone_count": {
      "type": "integer",
      "minimum": 0
    },
    "report_id": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    },
    "schema_version": {
      "const": "1.0"
    },
    "signals": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "checked_at": {
            "type": "string",
            "format": "date-time"
          },
          "evidence_sha256": {
            "type": "string",
            "pattern": "^[a-f0-9]{64}$"
          },
          "source_url": {
            "type": "string",
            "format": "uri",
            "pattern": "^https://"
          },
          "type": {
            "type": "string"
          },
          "value": {
            "type": "string"
          }
        },
        "required": [
          "checked_at",
          "evidence_sha256",
          "source_url",
          "type",
          "value"
        ],
        "additionalProperties": false
      }
    },
    "signals_truncated": {
      "type": "boolean"
    },
    "status": {
      "enum": [
        "verified",
        "unknown",
        "invalid_input",
        "no_verified_signal"
      ]
    }
  },
  "required": [
    "billing_event",
    "billing_quantity",
    "booking_link_count",
    "checked_at",
    "company_website",
    "completed_at",
    "contact_page_count",
    "coverage_complete",
    "downloaded_bytes",
    "duration_ms",
    "email_count",
    "error_code",
    "error_message",
    "http_request_count",
    "observed_signal_count",
    "pages_checked",
    "phone_count",
    "report_id",
    "schema_version",
    "signals",
    "signals_truncated",
    "status"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Website Contact Finder — Email, Phone & Booking report"
}
