# Archived JSON schemas Zoom returns the following JSON schemas when downloading chat messages and subgroup activity with the [Get a meeting's archived files](/docs/api/meetings/#tag/archiving/get/past_meetings/{meetingUUID}/archive_files) API. ## In-meeting chat message ```json { "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "Archiving Chat", "type": "object", "properties": { "uuid": { "type": "string", "format": "uuid", "description": "The meeting or webinar's universally unique ID (UUID). Each meeting or webinar instance generates its own UUID." }, "messages": { "type": "array", "description": "A list of archived chat messages.", "items": { "type": "object", "properties": { "msg_type": { "type": "integer", "enum": [1, 2, 3, 4, 5, 6, 7], "description": "Message type. 1: public chat, 2: private chat, 3: deleted chat, 4: emoji reaction, 5: nonverbal feedback, 6: edited chat, 7: reply chat." }, "e_time": { "type": "string", "pattern": "^(\\d{2}:\\d{2}:\\d{2})$", "description": "Elapsed time after the meeting or webinar started (HH:MM:SS).", "examples": ["00:05:30", "01:23:45"] }, "s_id": { "type": "string", "description": "The sender's ID. If the user did not choose to display email and node_id, the value is empty." }, "s_name": { "type": "string", "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}(?:==)?|[A-Za-z0-9+/]{3}=?)?$", "description": "The sender's name for this message, base64-encoded." }, "s_email": { "type": "string", "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}(?:==)?|[A-Za-z0-9+/]{3}=?)?$", "description": "The sender's email for this message, base64-encoded. Empty if hidden." }, "e_archive_time": { "type": "string", "pattern": "^(\\d{2}:\\d{2}:\\d{2})$", "description": "Elapsed time since archiving started (HH:MM:SS).", "examples": ["00:05:30", "01:23:45"] }, "msg_id": { "type": "string", "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}(?:==)?|[A-Za-z0-9+/]{3}=?)?$", "description": "The text message's unique ID or the unique ID of the deleted/edited message, base64-encoded." }, "msg_extended_type": { "type": "string", "pattern": "^(\\d{2}){6}$", "description": "The format XX XX XX XX XX XX of this message type from the left to right has 2-digit decimal pair numbers which indicates the type of the message. The information for each pair is listed here: 1st XX pair (Sender Location): 01-Meeting, 02-Webinar, 03-Breakout Room, 04-Waiting Room, 05-Backstage; 2nd XX pair (Receiver Location): 01-Meeting, 02-Webinar, 03-Breakout Room, 04-Waiting Room, 05-Backstage; 3rd XX pair (Message Type): 01-Sent, 02-Deleted, 03-Edited; 4th XX pair: 00-Null; 5th XX pair (Receiver): 01- Everyone in meeting, 02-(Webinar)Hosts and Panelists, 03-(Webinar)Attendee CC to Panelists and Hosts, 04-Direct message to User, 05-Waiting Room Participants, 06 - To all hosts (from Waiting Room), 07 - Private group chat; 6th XX pair: 00-Null." }, "r_id": { "type": "string", "description": "Receiver's ID. Required when msg_type=2 (private chat)." }, "r_name": { "type": "string", "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}(?:==)?|[A-Za-z0-9+/]{3}=?)?$", "description": "Receiver's name, base64-encoded. Required when msg_type=2." }, "r_email": { "type": "string", "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}(?:==)?|[A-Za-z0-9+/]{3}=?)?$", "description": "Receiver's email, base64-encoded. Required when msg_type=2. Empty if hidden." }, "msg_content": { "type": "string", "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}(?:==)?|[A-Za-z0-9+/]{3}=?)?$", "description": "Message content, format depends on msg_type. base64-encoded." }, "original_msg_id": { "type": "string", "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}(?:==)?|[A-Za-z0-9+/]{3}=?)?$", "description": "The ID of the original message that was deleted or edited. base64-encoded." }, "parent_msg_id": { "type": "string", "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}(?:==)?|[A-Za-z0-9+/]{3}=?)?$", "description": "The ID of the parent message being replied to. base64-encoded." }, "private_group_id": { "type": "string", "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}(?:==)?|[A-Za-z0-9+/]{3}=?)?$", "description": "ID of the private chat group. Used when msg_extended_type indicates private group (07). base64-encoded." }, "files": { "type": "array", "description": "List of files shared in this chat message.", "items": { "type": "object", "properties": { "fileId": { "type": "string" }, "fileName": { "type": "string" }, "fileSize": { "type": "integer" } }, "required": ["fileId", "fileName", "fileSize"] } }, "rich_text": { "type": "array", "description": "Rich text formatting applied to parts of the message.", "items": { "type": "object", "properties": { "start_position": { "type": "integer" }, "end_position": { "type": "integer" }, "format_type": { "type": "string", "enum": [ "Bold", "Italic", "Strikethrough", "BulletedList", "NumberedList", "Underline", "FontSize", "FontColor", "BackgroundColor", "LeftIndent", "Paragraph", "Quote", "AddLink" ] }, "format_attr": { "type": "string" } }, "required": [ "start_position", "end_position", "format_type" ] } } }, "required": [ "msg_type", "e_time", "e_archive_time", "s_id", "s_name", "s_email" ], "allOf": [ { "if": { "properties": { "msg_type": { "enum": [1, 2, 3, 6, 7] } } }, "then": { "required": ["msg_id", "msg_extended_type"] } }, { "if": { "properties": { "msg_type": { "const": 2 } } }, "then": { "required": ["r_id", "r_name", "r_email"] } }, { "if": { "properties": { "msg_type": { "enum": [1, 2, 4, 6, 7] } } }, "then": { "properties": { "msg_content": { "type": "string", "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$", "description": "The content of this text message in the meeting or webinar or the command of the emoji reaction in the meeting or webinar. base64 encoded." } }, "required": ["msg_content"] } }, { "if": { "properties": { "msg_type": { "const": 5 } } }, "then": { "properties": { "msg_content": { "type": "string", "pattern": "^[0-9]+$", "description": "The command of the nonverbal feedback in the meeting or webinar. For example: 1-raising hand, 2-yes, 3-no." } }, "required": ["msg_content"] } }, { "if": { "properties": { "msg_type": { "enum": [3, 6] } } }, "then": { "required": ["original_msg_id"] } }, { "if": { "properties": { "msg_type": { "const": 7 } } }, "then": { "required": ["parent_msg_id"] } } ] } } }, "required": ["uuid", "messages"] } ``` ## Subgroup archiving activity ```json { "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "Subgroup Archiving Activity", "type": "object", "properties": { "archiving_start_time": { "type": "string", "format": "date-time", "description": "The archiving starting timestamp in GMT format.", "examples": ["2021-04-26T05:23:18Z"] }, "backstage_room": { "$ref": "#/$defs/BackstageRoom" }, "private_group": { "type": "array", "items": { "$ref": "#/$defs/PrivateGroup" } } }, "required": ["archiving_start_time"], "$defs": { "BackstageRoom": { "type": "object", "properties": { "id": { "type": "string", "description": "The ID of the Webinar backstage room." }, "createTime": { "type": "string", "pattern": "^(\\d{2}:\\d{2}:\\d{2})$", "description": "Elapsed time from archiving start when the backstage room was created (HH:MM:SS).", "examples": ["00:00:30"] }, "deleteTime": { "type": "string", "pattern": "^(\\d{2}:\\d{2}:\\d{2})$", "description": "Elapsed time from archiving start when the backstage room was deleted (HH:MM:SS).", "examples": ["00:10:30"] }, "actions": { "type": "array", "items": { "$ref": "#/$defs/Participant" } } }, "required": ["id", "createTime", "deleteTime", "actions"] }, "PrivateGroup": { "type": "object", "properties": { "id": { "type": "string", "description": "The ID of the private chat group." }, "createTime": { "type": "string", "pattern": "^(\\d{2}:\\d{2}:\\d{2})$", "description": "Elapsed time from archiving start when the private chat group was created (HH:MM:SS).", "examples": ["00:00:30"] }, "deleteTime": { "type": "string", "pattern": "^(\\d{2}:\\d{2}:\\d{2})$", "description": "Elapsed time from archiving start when the private chat group was deleted (HH:MM:SS).", "examples": ["00:20:30"] }, "actions": { "type": "array", "items": { "$ref": "#/$defs/Participant" } } }, "required": ["id", "createTime", "deleteTime", "actions"] }, "Participant": { "type": "object", "properties": { "email": { "type": "string", "format": "email", "description": "The email of the participant." }, "joinTime": { "type": "string", "pattern": "^(\\d{2}:\\d{2}:\\d{2})$", "description": "Elapsed time from archiving start when the participant joined (HH:MM:SS).", "examples": ["00:00:30"] }, "leaveTime": { "type": "string", "pattern": "^(\\d{2}:\\d{2}:\\d{2})$", "description": "Elapsed time from archiving start when the participant left (HH:MM:SS).", "examples": ["00:00:35"] } }, "required": ["joinTime", "leaveTime"] } } } ```