{
  "$id": "https://example.com/PublishingRecordUpdated.json",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "PublishingRecordUpdated",
  "description": "An event raised when a published entity got updated.",
  "type": "object",
  "properties": {
    "metadata": {
      "type": "object",
      "properties": {
        "occurredAtUtc": {
          "type": "string",
          "description": "The date and time when event occurred in UTC. Date should be represented in ISO 8601 format e.g 2023-09-08T12:00:00Z"
        },
        "typeName": {
          "type": "string",
          "description": "The name of the event. E.g PublishingRecordUpdated"
        },
        "source": {
          "type": "string",
          "description": "The source of the event like was it genereated by Client using Web or WeChat with the format: applicationIdentifier;V1.0.0"
        },
        "sourceTimeZone": {
          "type": "string",
          "description": "Timezone for the event"
        },
        "sendAtUtc": {
          "type": "string",
          "description":  "When event was send by the publishers in ISO 8601 "
        },
        "type": {
          "type": "string",
          "description": "A type of the message transferred"
        },
        "action": {
          "type": "string",
          "description": "Record updated status ie upsert/delete"
        },
        "priority": {
          "type": "string",
          "description": "Type of the data processing priority upcomming/past"
        }
      },
      "required": [ "occurredAtUtc", "typeName", "sendAtUtc","type","action","priority"]
  },
    "data": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "Value of the identifier"
        },
        "identifier": {
          "type": "object",
          "description": "Identifier of the record in field Id. It can be ObjectId, AuctionId, PrivateSaleId..."
        },
        "dateUpdated": {
          "type": "string",
          "description": "When the record has been last updated."
        },
        "data": {
          "type": "object",
          "properties":{
            "lng": {
              "type": "array",
              "items": ["en","zh-hant","zh-hans","fra","rus"],
              "minItems": 1
            },
            "titleEn": {
              "type": "string",
              "description": "Title for the article in english only."
            },
            "batchId": {
              "type": "string",
              "description": "Identifier of the batch from the process."
            },
            "batchTotal": {
              "type": "string",
              "description": "Total number of message to be trafered."
            }
          }
        }

      }
    }
}
}
