{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "Message",
  "type": "object",
  "description": "A message in a mailFolder.",
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique identifier for the message. Read-only."
    },
    "createdDateTime": {
      "type": "string",
      "description": "The date and time the message was created in UTC (ISO 8601)."
    },
    "lastModifiedDateTime": {
      "type": "string",
      "description": "The date and time the message was last changed in UTC (ISO 8601)."
    },
    "changeKey": {
      "type": "string",
      "description": "The version of the message."
    },
    "categories": {
      "type": "array",
      "description": "The categories associated with the message."
    },
    "receivedDateTime": {
      "type": "string",
      "description": "The date and time the message was received in UTC (ISO 8601)."
    },
    "sentDateTime": {
      "type": "string",
      "description": "The date and time the message was sent in UTC (ISO 8601)."
    },
    "hasAttachments": {
      "type": "boolean",
      "description": "Indicates whether the message has attachments. Does not include inline attachments."
    },
    "internetMessageId": {
      "type": "string",
      "description": "The message ID in the format specified by RFC 2822."
    },
    "internetMessageHeaders": {
      "type": "array",
      "description": "Collection of message headers defined by RFC 5322. Returned only on applying a $select query option."
    },
    "subject": {
      "type": "string",
      "description": "The subject of the message."
    },
    "bodyPreview": {
      "type": "string",
      "description": "The first 255 characters of the message body in text format."
    },
    "importance": {
      "type": "string",
      "description": "The importance of the message."
    },
    "parentFolderId": {
      "type": "string",
      "description": "The unique identifier for the message's parent mailFolder."
    },
    "conversationId": {
      "type": "string",
      "description": "The ID of the conversation the email belongs to."
    },
    "conversationIndex": {
      "type": "string",
      "description": "Indicates the position of the message within the conversation."
    },
    "isDeliveryReceiptRequested": {
      "type": "boolean",
      "description": "Indicates whether a delivery receipt is requested."
    },
    "isReadReceiptRequested": {
      "type": "boolean",
      "description": "Indicates whether a read receipt is requested."
    },
    "isRead": {
      "type": "boolean",
      "description": "Indicates whether the message has been read."
    },
    "isDraft": {
      "type": "boolean",
      "description": "Indicates whether the message is a draft."
    },
    "webLink": {
      "type": "string",
      "description": "The URL to open the message in Outlook on the web."
    },
    "inferenceClassification": {
      "type": "string",
      "description": "The classification of the message based on inferred relevance or importance, or on an explicit override."
    },
    "toRecipients": {
      "type": "array",
      "description": "The To recipients for the message."
    },
    "ccRecipients": {
      "type": "array",
      "description": "The Cc recipients for the message."
    },
    "bccRecipients": {
      "type": "array",
      "description": "The Bcc recipients for the message."
    },
    "replyTo": {
      "type": "array",
      "description": "The email addresses to use when replying."
    },
    "attachments": {
      "type": "array",
      "description": "The fileAttachment and itemAttachment attachments for the message."
    }
  }
}