{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/Event",
  "title": "Event",
  "type": "object",
  "required": [
    "id",
    "resource",
    "type",
    "actorId",
    "orgId",
    "created",
    "data"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "Y2lzY29zcGFyazovL3VzL0VWRU5UL2JiY2ViMWFkLTQzZjEtM2I1OC05MTQ3LWYxNGJiMGM0ZDE1NAo",
      "description": "The unique identifier for the event."
    },
    "resource": {
      "$ref": "#/components/schemas/EventResourceEnum",
      "description": "The type of resource in the event."
    },
    "type": {
      "$ref": "#/components/schemas/EventTypeEnum",
      "description": "The action which took place in the event."
    },
    "appId": {
      "type": "string",
      "example": "null",
      "description": "The ID of the application for the event."
    },
    "actorId": {
      "type": "string",
      "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY",
      "description": "The ID of the person who performed the action."
    },
    "orgId": {
      "type": "string",
      "example": "OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh",
      "description": "The ID of the organization for the event."
    },
    "created": {
      "type": "string",
      "example": "2016-05-16T21:34:59.324Z",
      "description": "The date and time of the event."
    },
    "data": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "example": "Y2lzY29zcGFyazovL3VzL01FU1NBR0UvOTJkYjNiZTAtNDNiZC0xMWU2LThhZTktZGQ1YjNkZmM1NjVk"
        },
        "roomId": {
          "type": "string",
          "example": "Y2lzY29zcGFyazovL3VzL1JPT00vYmJjZWIxYWQtNDNmMS0zYjU4LTkxNDctZjE0YmIwYzRkMTU0"
        },
        "roomType": {
          "type": "string",
          "example": "group"
        },
        "orgId": {
          "type": "string",
          "example": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9jZTg2MWZiYS02ZTJmLTQ5ZjktOWE4NC1iMzU0MDA4ZmFjOWU"
        },
        "text": {
          "type": "string",
          "example": "PROJECT UPDATE - A new project plan has been published on Box: http://box.com/s/lf5vj. The PM for this project is Mike C. and the Engineering Manager is Jane W."
        },
        "personId": {
          "type": "string",
          "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY"
        },
        "personEmail": {
          "type": "string",
          "example": "matt@example.com"
        },
        "meetingId": {
          "type": "string",
          "example": "16ce696f75844d24b2d4fab04b4419af_I_183979003076423608"
        },
        "creatorId": {
          "type": "string",
          "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS82YWE2ZGE5OS0xYzdlLTQ4MWItODY3YS03MWY2NTIwNDk0MzM"
        },
        "host": {
          "type": "object",
          "properties": {},
          "description": "The meeting's host data."
        },
        "attendees": {
          "type": "array",
          "items": {},
          "description": "Common Identity (CI) authenticated meeting attendees."
        },
        "transcriptionEnabled": {
          "type": "string",
          "example": "yes",
          "description": "Indicates whether or not the Voice Assistant was enabled during the meeting. If `true` a transcript should be available a couple minutes after the meeting ended at the [meetingTranscripts resource](/docs/api/v1/meeting-transcripts)."
        },
        "recordingEnabled": {
          "type": "string",
          "example": "yes",
          "description": "Indicates if recording was enabled for all or parts of the meeting. If `true` a recording should be available shortly after the meeting ended at the [recordings resource](/docs/api/v1/recordings)."
        },
        "hasPostMeetingsChat": {
          "type": "string",
          "example": "yes",
          "description": "Indicates if chat messages were exchanged during the meeting in the meetings client (not the unified client). If `true` these messages can be accessed by a compliance officer at the [postMeetingsChat](/docs/api/v1/meetings-chat) resource. Meetings chat collection must be custom enabled."
        },
        "corelationId": {
          "type": "string",
          "example": "fdda8613-d34b-424c-8c6a-44ff2e19379c",
          "description": "Telephony; The corelation id."
        },
        "callType": {
          "type": "string",
          "example": "SIP_ENTERPRISE",
          "description": "Telephony; call types (examples `VIDEO_DIALIN`,`VIDEO_DIALOUT`,`CASCADE`,`HYBRID_CASCADE`,`PSTN_SIP`,`PSTN_DIALIN`,`PSTN_DIALOUT`,`PSTN_ONLY_DIALIN`,`PSTN_ONLY_DIALOUT`,`H323`,`H323_IP`,`SIP_ENTERPRISE`,`SIP_MOBILE`,`SIP_NATIONAL`,`SIP_INTERNATIONAL`,`SIP_EMERGENCY`,`SIP_OPERATOR`,`SIP_SHORTCODE`,`SIP_TOLLFREE`,`SIP_PREMIUM`,`SIP_URI`,`SIP_INBOUND`,`UNKNOWN`,`ZTM`,`SIP_MEETING`)."
        },
        "userId": {
          "type": "string",
          "example": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS8zZjEwMTU1NC04ZGJjLTQyMmUtOGEzZC1kYTk1YTI3NWZlNzU",
          "description": "Telephony; user id of the CDR owner."
        },
        "userType": {
          "type": "string",
          "example": "User",
          "description": "Telephony; The type of user (`User`,`Anchor`,`AutomatedAttendantBasic`,`AutomatedAttendantStandard`,`AutomatedAttendantVideo`,`BroadworksAnywhere`,`CallCenterBasic`,`CallCenterPremium`,`CallCenterStandard`,`CollaborateBridge`,`ContactCenterAdaptor`,`FindMeFollowMe`,`FlexibleSeatingHost`,`GroupCall`,`GroupPaging`,`HuntGroup`,`LocalGateway`,`MeetMeConference`,`Place`,`RoutePoint`,`SystemVoicePortal`,`VoiceMailGroup`,`VoiceMailRetrieval`,`VoiceXML`,`VirtualLine`,`Unknown`)."
        },
        "callDirection": {
          "type": "string",
          "example": "ORIGINTATING",
          "description": "Telephony; `ORIGINATING` or `TERMINATING`."
        },
        "isCallAnswered": {
          "type": "string",
          "example": "true",
          "description": "Telephony; indicates if the call was answered."
        },
        "callDurationSeconds": {
          "type": "string",
          "example": "192",
          "description": "Telephony; duration of call in seconds."
        },
        "callStartTime": {
          "type": "string",
          "example": "2023-02-08T06:12:43.976Z",
          "description": "Telephony; ISO 8601."
        },
        "callAnswerTime": {
          "type": "string",
          "example": "2023-02-08T06:12:47.012Z",
          "description": "Telephony; ISO 8601."
        },
        "callTransferTime": {
          "type": "string",
          "example": "2023-02-08T06:15:19.112Z",
          "description": "Telephony; ISO 8601."
        },
        "callingNumber": {
          "type": "string",
          "example": "910481234",
          "description": "Telephony; originating number."
        },
        "callingLineId": {
          "type": "string",
          "example": "211",
          "description": "Telephony."
        },
        "calledNumber": {
          "type": "string",
          "example": "4089671221",
          "description": "Telephony; destination number."
        },
        "calledLineId": {
          "type": "string",
          "example": "219",
          "description": "Telephony"
        },
        "dialedDigits": {
          "type": "string",
          "example": "123",
          "description": "Telephony"
        },
        "callRedirectingNumber": {
          "type": "string",
          "description": "Telephony"
        },
        "callRedirectedReason": {
          "type": "string",
          "description": "Telephony"
        },
        "created": {
          "type": "string",
          "example": "2016-05-16T21:34:59.324Z"
        },
        "type": {
          "type": "string",
          "example": "direct",
          "description": "Message type `direct` or `group` message."
        },
        "breakoutSessionId": {
          "type": "string",
          "example": "d66a4a90-4f50-11ef-bc94-f5c71646dc71",
          "description": "The breakout session Id in cases where the action happened in a meeting's brakout session, for example a `meetingMessage`."
        },
        "recipients": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/Recipient"
          },
          "description": "The recipients list for directed meetingMessages."
        }
      },
      "description": "The event's data representation. This object will contain the event's `resource`, such as [memberships](/docs/api/v1/memberships/get-membership-details), [messages](/docs/api/v1/messages/get-message-details), [meetings](/docs/api/v1/meetings), [meetingMessages](/docs/api/v1/meetingMessages), [tabs](/docs/api/v1/room-tabs), [rooms](/docs/api/v1/space-classifications) or [attachmentActions](/docs/api/v1/attachment-actions) at the time the event took place."
    }
  }
}