{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "title": "FileMessage", "description": "This message represents a generic file.", "allOf": [{ "$ref": "core/room_event.json" }], "properties": { "content": { "type": "object", "properties": { "msgtype": { "type": "string", "enum": ["m.file"] }, "filename": { "type": "string", "description": "The original filename of the uploaded file." }, "body": { "type": "string", "description": "A human-readable description of the file. This is recommended to be the filename of the original upload." }, "url": { "type": "string", "description": "The URL to the file." }, "info": { "type": "object", "title": "FileInfo", "description": "Information about the file referred to in ``url``.", "properties": { "size": { "type": "integer", "description": "The size of the file in bytes." }, "mimetype": { "type": "string", "description": "The mimetype of the file e.g. ``application/msword``." } } }, "thumbnail_url": { "type": "string", "description": "The URL to the thumbnail of the file." }, "thumbnail_info": { "type": "object", "title": "ImageInfo", "description": "Metadata about the image referred to in ``thumbnail_url``.", "allOf": [{ "$ref": "core/msgtype_infos/image_info.json" }] } }, "required": ["msgtype", "body", "url", "filename"] }, "type": { "type": "string", "enum": ["m.room.message"] } } }