# 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 title: Persistent Data Unit description: A persistent data unit (event) for room versions 1 and 2. example: $ref: "../examples/pdu.json" allOf: - $ref: "unsigned_pdu.yaml" - type: object properties: redacts: type: string description: For redaction events, the ID of the event being redacted. example: "$def456:matrix.org" hashes: type: object title: Event Hash description: |- Content hashes of the PDU, following the algorithm specified in [Signing Events](/server-server-api/#signing-events). example: { "sha256": "ThisHashCoversAllFieldsInCaseThisIsRedacted" } properties: sha256: type: string description: The hash. example: ThisHashCoversAllFieldsInCaseThisIsRedacted required: ['sha256'] 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 required: - hashes - signatures