{
  "$id": "https://example.com/AuctionDeletedEvent.json",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "AuctionDeletedEvent",
  "description": "Event raised when an auction record is deleted and should be removed from search.",
  "type": "object",
  "required": ["metadata", "data"],
  "properties": {
    "metadata": {
      "type": "object",
      "required": ["occurredAtUtc", "typeName", "correlationId", "sentAtUtc"],
      "properties": {
        "occurredAtUtc": {
          "type": "string",
          "description": "UTC timestamp when the event occurred (ISO 8601)."
        },
        "typeName": {
          "type": "string",
          "description": "Event type name. Expected value: auctionDeletedEvent."
        },
        "correlationId": {
          "type": "string",
          "description": "Correlation identifier used for cross-service tracing."
        },
        "source": {
          "type": "string",
          "description": "Source service and version that emitted the event."
        },
        "sentAtUtc": {
          "type": "string",
          "description": "UTC timestamp when the publisher sent the event (ISO 8601)."
        }
      }
    },
    "data": {
      "type": "object",
      "required": ["auctionId", "auctionNumber"],
      "properties": {
        "auctionId": {
          "type": "string",
          "description": "Unique identifier for the deleted auction record."
        },
        "auctionNumber": {
          "type": ["string", "number"],
          "description": "Business auction number of the deleted record."
        },
        "deletedAtUtc": {
          "type": "string",
          "description": "UTC timestamp when the auction was deleted (ISO 8601)."
        }
      }
    }
  }
}
