You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
matrix-spec/data/event-schemas/schema/m.receipt.yaml

64 lines
3.0 KiB
YAML

type: object
title: Receipt Event
description: Informs the client of new receipts.
x-changedInMatrixVersion:
"1.4": |
Added `m.read.private` receipts to the event's `content`.
allOf:
- $ref: "core-event-schema/event.yaml"
properties:
content:
type: object
description: |-
The mapping of event ID to a collection of receipts for this
event ID. The event ID is the ID of the event being acknowledged
and *not* an ID for the receipt itself.
patternProperties:
"^\\$":
type: object
x-pattern-format: "mx-event-id"
title: Event Receipts
description: |-
The collection of receipts for this event ID.
properties:
"m.read":
type: object
description: |-
A collection of users who have sent `m.read` receipts for
this event. The string key is the user ID the receipt
belongs to.
patternProperties:
"^@": &receiptUserMap
type: object
title: Receipt
description: |-
The mapping of user ID to receipt. The user ID is the
entity who sent this receipt.
x-pattern-format: "mx-user-id"
properties:
ts:
type: integer
format: int64
description: The timestamp the receipt was sent at.
thread_id:
type: string
x-addedInMatrixVersion: "1.4"
description: |-
The root thread event's ID (or `main`) for which
thread this receipt is intended to be under. If
not specified, the read receipt is *unthreaded*
(default).
"m.read.private":
type: object
description: |-
Similar to `m.read`, the users who have sent `m.read.private`
receipts for this event. Due to the nature of private read
receipts, this should only ever have the current user's ID.
patternProperties:
"^@": *receiptUserMap
additionalProperties: false
type:
type: string
enum: ["m.receipt", "m.receipt.private"]
required: ["type", "content"]