--- allOf: - $ref: core-event-schema/event.yaml description: |- This event type is used when sending encrypted events. It can be used either within a room (in which case it will have all of the `Room Event fields`_), or as a `to-device`_ event. properties: content: properties: algorithm: type: string enum: - m.olm.v1.curve25519-aes-sha2 - m.megolm.v1.aes-sha2 description: |- The encryption algorithm used to encrypt this event. The value of this field determines which other properties will be present. ciphertext: oneOf: - type: string - type: object additionalProperties: type: object title: CiphertextInfo properties: body: type: string description: The encrypted payload. type: type: integer description: The Olm message type. description: |- The encrypted content of the event. Either the encrypted payload itself, in the case of a Megolm event, or a map from the recipient Curve25519 identity key to ciphertext information, in the case of an Olm event. For more details, see `Messaging Algorithms`_. sender_key: type: string description: The Curve25519 key of the sender. device_id: type: string description: The ID of the sending device. Required with Megolm. session_id: type: string description: |- The ID of the session used to encrypt the message. Required with Megolm. required: - algorithm - sender_key - ciphertext type: object type: enum: - m.room.encrypted type: string type: object