# Copyright 2018 New Vector Ltd # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. type: object description: Common fields for all PDU versions properties: room_id: type: string description: Room identifier. example: "!abc123:matrix.org" sender: type: string description: The ID of the user sending the event. example: "@someone:matrix.org" origin_server_ts: type: integer format: int64 description: Timestamp in milliseconds on origin homeserver when this event was created. example: 1234567890 type: type: string description: Event type example: "m.room.message" state_key: type: string description: |- If this key is present, the event is a state event, and it will replace previous events with the same `type` and `state_key` in the room state. example: "my_key" content: type: object description: The content of the event. example: {"key": "value"} hashes: $ref: "event_hash.yaml" signatures: type: object description: |- Signatures for the PDU, following the algorithm specified in [Signing Events](/server-server-api/#signing-events). example: { "example.com": { "ed25519:key_version:": "86BytesOfSignatureOfTheRedactedEvent" } } additionalProperties: type: object title: Server Signatures additionalProperties: type: string unsigned: type: object title: UnsignedData description: |- Additional data added by the origin server but not covered by the `signatures`. example: {"key": "value"} properties: age: type: integer description: The number of milliseconds that have passed since this message was sent. example: 4612 required: - room_id - sender - origin_server_ts - type - content - depth - hashes - signatures