---
allOf:
  - $ref: core-event-schema/event.yaml

description: |-
  Requests a key verification with another user's devices.
properties:
  content:
    properties:
      from_device:
        type: string
        description: |-
          The device ID which is initiating the request.
      transaction_id:
        type: string
        description: |-
          Required when sent as a to-device message. An opaque identifier for
          the verification request. Must be unique with respect to the devices
          involved.
      methods:
        type: array
        description: |-
          The verification methods supported by the sender.
        items:
          type: string
      timestamp:
        type: integer
        format: int64
        description: |-
          Required when sent as a to-device message. The POSIX timestamp in
          milliseconds for when the request was made. If the request is in the
          future by more than 5 minutes or more than 10 minutes in the past,
          the message should be ignored by the receiver.
    required:
      - from_device
      - methods
    type: object
  type:
    enum:
      - m.key.verification.request
    type: string
type: object
