{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/lensmor/json-schema/lensmor-event-item-schema.json",
  "title": "EventItem",
  "description": "Shared public event summary used by event lists, search results, and recommendation workflows.",
  "x-generated": "2026-11-02",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/lensmor-openapi.json#/components/schemas/EventItem",
  "type": "object",
  "required": [
    "id",
    "eventId",
    "name"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "Stable Lensmor identifier for this record."
    },
    "eventId": {
      "type": "string",
      "description": "Public event identifier accepted by event-scoped endpoints."
    },
    "name": {
      "type": [
        "string",
        "null"
      ],
      "description": "Display name when available."
    },
    "nickname": {
      "type": [
        "string",
        "null"
      ],
      "description": "Alternative or shortened event name when available."
    },
    "description": {
      "type": [
        "string",
        "null"
      ],
      "description": "Public description when available."
    },
    "url": {
      "type": [
        "string",
        "null"
      ],
      "description": "Canonical public website URL when available."
    },
    "dateStart": {
      "type": [
        "string",
        "null"
      ],
      "format": "date",
      "description": "Event start date in ISO `YYYY-MM-DD` format when available."
    },
    "dateEnd": {
      "type": [
        "string",
        "null"
      ],
      "format": "date",
      "description": "Event end date in ISO `YYYY-MM-DD` format when available."
    },
    "venue": {
      "type": [
        "string",
        "null"
      ],
      "description": "Event venue name when available."
    },
    "city": {
      "type": [
        "string",
        "null"
      ],
      "description": "City associated with the record when available."
    },
    "region": {
      "type": [
        "string",
        "null"
      ],
      "description": "Region, state, or province when available."
    },
    "country": {
      "type": [
        "string",
        "null"
      ],
      "description": "Country associated with the record when available."
    },
    "exhibitorCount": {
      "type": [
        "integer",
        "null"
      ],
      "description": "Known exhibitor count for the event when available."
    },
    "hasVisitors": {
      "type": "boolean",
      "description": "True when the event currently has registered Visitor data available. This is an availability signal, not proof that the caller has unlocked Visitor access."
    },
    "sponsorMatchStarred": {
      "type": "integer",
      "enum": [
        0,
        1
      ],
      "description": "Sponsor Match starred state returned by Lensmor."
    },
    "image": {
      "type": [
        "string",
        "null"
      ],
      "description": "Public image or logo URL when available."
    },
    "dataSource": {
      "type": "string",
      "const": "Lensmor",
      "description": "Source label for the returned Lensmor record."
    }
  },
  "additionalProperties": true
}