mirror of
https://github.com/matrix-org/matrix-spec
synced 2026-04-04 02:04:10 +02:00
Clarify string formats of event endpoints and schemas
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
This commit is contained in:
parent
2192bfa996
commit
d601884378
|
|
@ -24,8 +24,9 @@ allOf:
|
||||||
room_id:
|
room_id:
|
||||||
description: The ID of the room associated with this event.
|
description: The ID of the room associated with this event.
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
example: '!jEsUZKDJdhlrceRyVU:example.org'
|
example: '!jEsUZKDJdhlrceRyVU:example.org'
|
||||||
|
|
||||||
unsigned:
|
unsigned:
|
||||||
properties:
|
properties:
|
||||||
redacted_because:
|
redacted_because:
|
||||||
|
|
@ -43,6 +44,6 @@ allOf:
|
||||||
"unsigned": {
|
"unsigned": {
|
||||||
"age": 1257,
|
"age": 1257,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
required:
|
required:
|
||||||
- room_id
|
- room_id
|
||||||
|
|
|
||||||
|
|
@ -28,6 +28,8 @@ properties:
|
||||||
event_id:
|
event_id:
|
||||||
description: The globally unique identifier for this event.
|
description: The globally unique identifier for this event.
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-event-id
|
||||||
|
pattern: "^\\$"
|
||||||
example: '$26RqwJMLw-yds1GAH_QxjHRC1Da9oasK0e5VLnck_45'
|
example: '$26RqwJMLw-yds1GAH_QxjHRC1Da9oasK0e5VLnck_45'
|
||||||
type:
|
type:
|
||||||
description: The type of the event.
|
description: The type of the event.
|
||||||
|
|
@ -47,6 +49,8 @@ properties:
|
||||||
sender:
|
sender:
|
||||||
description: Contains the fully-qualified ID of the user who sent this event.
|
description: Contains the fully-qualified ID of the user who sent this event.
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-user-id
|
||||||
|
pattern: "^@"
|
||||||
example: "@example:example.org"
|
example: "@example:example.org"
|
||||||
origin_server_ts:
|
origin_server_ts:
|
||||||
description: |-
|
description: |-
|
||||||
|
|
|
||||||
|
|
@ -39,5 +39,7 @@ properties:
|
||||||
such.
|
such.
|
||||||
event_id:
|
event_id:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-event-id
|
||||||
|
pattern: "^\\$"
|
||||||
description: The event ID of the event that this event relates to.
|
description: The event ID of the event that this event relates to.
|
||||||
required: ['rel_type', 'event_id']
|
required: ['rel_type', 'event_id']
|
||||||
|
|
|
||||||
|
|
@ -37,6 +37,8 @@ paths:
|
||||||
example: "!636q39766251:example.com"
|
example: "!636q39766251:example.com"
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
- in: query
|
- in: query
|
||||||
name: from
|
name: from
|
||||||
x-changedInMatrixVersion:
|
x-changedInMatrixVersion:
|
||||||
|
|
|
||||||
|
|
@ -148,6 +148,8 @@ paths:
|
||||||
properties:
|
properties:
|
||||||
room_id:
|
room_id:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
description: The ID of this room.
|
description: The ID of this room.
|
||||||
membership:
|
membership:
|
||||||
type: string
|
type: string
|
||||||
|
|
@ -337,6 +339,8 @@ paths:
|
||||||
example: $asfDuShaf7Gafaw:matrix.org
|
example: $asfDuShaf7Gafaw:matrix.org
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-event-id
|
||||||
|
pattern: "^\\$"
|
||||||
responses:
|
responses:
|
||||||
"200":
|
"200":
|
||||||
description: The full event.
|
description: The full event.
|
||||||
|
|
|
||||||
|
|
@ -43,13 +43,17 @@ paths:
|
||||||
example: "!637q39766251:example.com"
|
example: "!637q39766251:example.com"
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
- in: path
|
- in: path
|
||||||
name: eventId
|
name: eventId
|
||||||
description: The ID of the event to redact
|
description: The ID of the event to redact.
|
||||||
required: true
|
required: true
|
||||||
example: bai2b1i9:matrix.org
|
example: $bai2b1i9:matrix.org
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-event-id
|
||||||
|
pattern: "^\\$"
|
||||||
- in: path
|
- in: path
|
||||||
name: txnId
|
name: txnId
|
||||||
description: |-
|
description: |-
|
||||||
|
|
@ -82,6 +86,8 @@ paths:
|
||||||
properties:
|
properties:
|
||||||
event_id:
|
event_id:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-event-id
|
||||||
|
pattern: "^\\$"
|
||||||
description: A unique identifier for the event.
|
description: A unique identifier for the event.
|
||||||
examples:
|
examples:
|
||||||
response:
|
response:
|
||||||
|
|
|
||||||
|
|
@ -233,6 +233,8 @@ components:
|
||||||
example: "!636q39766251:matrix.org"
|
example: "!636q39766251:matrix.org"
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
eventId:
|
eventId:
|
||||||
in: path
|
in: path
|
||||||
name: eventId
|
name: eventId
|
||||||
|
|
@ -241,6 +243,8 @@ components:
|
||||||
example: $asfDuShaf7Gafaw
|
example: $asfDuShaf7Gafaw
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-event-id
|
||||||
|
pattern: "^\\$"
|
||||||
from:
|
from:
|
||||||
in: query
|
in: query
|
||||||
name: from
|
name: from
|
||||||
|
|
|
||||||
|
|
@ -56,6 +56,8 @@ paths:
|
||||||
example: "!636q39766251:matrix.org"
|
example: "!636q39766251:matrix.org"
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
- in: query
|
- in: query
|
||||||
name: ts
|
name: ts
|
||||||
description: |-
|
description: |-
|
||||||
|
|
@ -86,6 +88,8 @@ paths:
|
||||||
properties:
|
properties:
|
||||||
event_id:
|
event_id:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-event-id
|
||||||
|
pattern: "^\\$"
|
||||||
description: The ID of the event found
|
description: The ID of the event found
|
||||||
origin_server_ts:
|
origin_server_ts:
|
||||||
type: integer
|
type: integer
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,8 @@ paths:
|
||||||
example: "!636q39766251:example.com"
|
example: "!636q39766251:example.com"
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
responses:
|
responses:
|
||||||
"200":
|
"200":
|
||||||
description: The current state of the room
|
description: The current state of the room
|
||||||
|
|
@ -38,6 +40,8 @@ paths:
|
||||||
properties:
|
properties:
|
||||||
room_id:
|
room_id:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
description: The ID of this room.
|
description: The ID of this room.
|
||||||
membership:
|
membership:
|
||||||
type: string
|
type: string
|
||||||
|
|
|
||||||
|
|
@ -49,6 +49,8 @@ paths:
|
||||||
example: "!636q39766251:example.com"
|
example: "!636q39766251:example.com"
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
- in: path
|
- in: path
|
||||||
name: eventType
|
name: eventType
|
||||||
description: The type of event to send.
|
description: The type of event to send.
|
||||||
|
|
@ -86,6 +88,8 @@ paths:
|
||||||
properties:
|
properties:
|
||||||
event_id:
|
event_id:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-event-id
|
||||||
|
pattern: "^\\$"
|
||||||
description: A unique identifier for the event.
|
description: A unique identifier for the event.
|
||||||
required:
|
required:
|
||||||
- event_id
|
- event_id
|
||||||
|
|
|
||||||
|
|
@ -49,6 +49,8 @@ paths:
|
||||||
example: "!636q39766251:example.com"
|
example: "!636q39766251:example.com"
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
- in: path
|
- in: path
|
||||||
name: eventType
|
name: eventType
|
||||||
description: The type of event to send.
|
description: The type of event to send.
|
||||||
|
|
@ -86,6 +88,8 @@ paths:
|
||||||
properties:
|
properties:
|
||||||
event_id:
|
event_id:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-event-id
|
||||||
|
pattern: "^\\$"
|
||||||
description: A unique identifier for the event.
|
description: A unique identifier for the event.
|
||||||
required:
|
required:
|
||||||
- event_id
|
- event_id
|
||||||
|
|
|
||||||
|
|
@ -34,6 +34,8 @@ paths:
|
||||||
example: "!636q39766251:matrix.org"
|
example: "!636q39766251:matrix.org"
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
- in: path
|
- in: path
|
||||||
name: eventId
|
name: eventId
|
||||||
description: The event ID to get.
|
description: The event ID to get.
|
||||||
|
|
@ -41,6 +43,8 @@ paths:
|
||||||
example: $asfDuShaf7Gafaw:matrix.org
|
example: $asfDuShaf7Gafaw:matrix.org
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-event-id
|
||||||
|
pattern: "^\\$"
|
||||||
responses:
|
responses:
|
||||||
"200":
|
"200":
|
||||||
description: The full event.
|
description: The full event.
|
||||||
|
|
@ -89,6 +93,8 @@ paths:
|
||||||
example: "!636q39766251:example.com"
|
example: "!636q39766251:example.com"
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
- in: path
|
- in: path
|
||||||
name: eventType
|
name: eventType
|
||||||
description: The type of state to look up.
|
description: The type of state to look up.
|
||||||
|
|
@ -158,6 +164,8 @@ paths:
|
||||||
example: "!636q39766251:example.com"
|
example: "!636q39766251:example.com"
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
responses:
|
responses:
|
||||||
"200":
|
"200":
|
||||||
description: The current state of the room
|
description: The current state of the room
|
||||||
|
|
@ -211,6 +219,8 @@ paths:
|
||||||
example: "!636q39766251:example.com"
|
example: "!636q39766251:example.com"
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
- in: query
|
- in: query
|
||||||
name: at
|
name: at
|
||||||
description: |-
|
description: |-
|
||||||
|
|
@ -305,6 +315,8 @@ paths:
|
||||||
example: "!636q39766251:example.com"
|
example: "!636q39766251:example.com"
|
||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
security:
|
security:
|
||||||
- accessTokenQuery: []
|
- accessTokenQuery: []
|
||||||
- accessTokenBearer: []
|
- accessTokenBearer: []
|
||||||
|
|
|
||||||
|
|
@ -209,6 +209,8 @@ paths:
|
||||||
field may be omitted.
|
field may be omitted.
|
||||||
items:
|
items:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-user-id
|
||||||
|
pattern: "^@"
|
||||||
m.joined_member_count:
|
m.joined_member_count:
|
||||||
type: integer
|
type: integer
|
||||||
description: |-
|
description: |-
|
||||||
|
|
|
||||||
|
|
@ -20,10 +20,13 @@ properties:
|
||||||
The signatures are calculated using the process described at
|
The signatures are calculated using the process described at
|
||||||
[Signing JSON](/appendices/#signing-json).
|
[Signing JSON](/appendices/#signing-json).
|
||||||
type: object
|
type: object
|
||||||
additionalProperties:
|
patternProperties:
|
||||||
type: object
|
"":
|
||||||
additionalProperties:
|
x-pattern-format: mx-server-name
|
||||||
type: string
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
format: mx-unpadded-base64
|
||||||
example: {
|
example: {
|
||||||
"magic.forest": {
|
"magic.forest": {
|
||||||
"ed25519:3": "fQpGIW1Snz+pwLZu6sTy2aHy/DYWWTspTJRPyNp0PKkymfIsNffysMl6ObMMFdIJhk6g6pwlIqZ54rxo8SLmAg"
|
"ed25519:3": "fQpGIW1Snz+pwLZu6sTy2aHy/DYWWTspTJRPyNp0PKkymfIsNffysMl6ObMMFdIJhk6g6pwlIqZ54rxo8SLmAg"
|
||||||
|
|
|
||||||
|
|
@ -11,5 +11,7 @@ allOf:
|
||||||
The ID of the room associated with this event. Will not be present on events
|
The ID of the room associated with this event. Will not be present on events
|
||||||
that arrive through `/sync`, despite being required everywhere else.
|
that arrive through `/sync`, despite being required everywhere else.
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
required:
|
required:
|
||||||
- room_id
|
- room_id
|
||||||
|
|
|
||||||
|
|
@ -39,6 +39,8 @@ properties:
|
||||||
sender:
|
sender:
|
||||||
description: The `sender` for the event.
|
description: The `sender` for the event.
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-user-id
|
||||||
|
pattern: "^@"
|
||||||
required:
|
required:
|
||||||
- type
|
- type
|
||||||
- state_key
|
- state_key
|
||||||
|
|
|
||||||
|
|
@ -29,9 +29,13 @@ allOf:
|
||||||
event_id:
|
event_id:
|
||||||
description: The globally unique event identifier.
|
description: The globally unique event identifier.
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-event-id
|
||||||
|
pattern: "^\\$"
|
||||||
sender:
|
sender:
|
||||||
description: Contains the fully-qualified ID of the user who sent this event.
|
description: Contains the fully-qualified ID of the user who sent this event.
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-user-id
|
||||||
|
pattern: "^@"
|
||||||
origin_server_ts:
|
origin_server_ts:
|
||||||
description: Timestamp in milliseconds on originating homeserver
|
description: Timestamp in milliseconds on originating homeserver
|
||||||
when this event was sent.
|
when this event was sent.
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,8 @@ properties:
|
||||||
The canonical alias for the room. If not present, null, or empty the
|
The canonical alias for the room. If not present, null, or empty the
|
||||||
room should be considered to have no canonical alias.
|
room should be considered to have no canonical alias.
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-alias
|
||||||
|
pattern: "^#"
|
||||||
alt_aliases:
|
alt_aliases:
|
||||||
description: |
|
description: |
|
||||||
Alternative aliases the room advertises. This list can have aliases
|
Alternative aliases the room advertises. This list can have aliases
|
||||||
|
|
@ -23,6 +25,8 @@ properties:
|
||||||
type: array
|
type: array
|
||||||
items:
|
items:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-alias
|
||||||
|
pattern: "^#"
|
||||||
type: object
|
type: object
|
||||||
state_key:
|
state_key:
|
||||||
description: A zero-length string.
|
description: A zero-length string.
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,8 @@ properties:
|
||||||
The `user_id` of the room creator. **Required** for, and only present in, room versions 1 - 10. Starting with
|
The `user_id` of the room creator. **Required** for, and only present in, room versions 1 - 10. Starting with
|
||||||
room version 11 the event `sender` should be used instead.
|
room version 11 the event `sender` should be used instead.
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-user-id
|
||||||
|
pattern: "^@"
|
||||||
m.federate:
|
m.federate:
|
||||||
description: Whether users on other servers can join this room. Defaults to `true` if key does not exist.
|
description: Whether users on other servers can join this room. Defaults to `true` if key does not exist.
|
||||||
type: boolean
|
type: boolean
|
||||||
|
|
@ -32,9 +34,13 @@ properties:
|
||||||
properties:
|
properties:
|
||||||
room_id:
|
room_id:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
description: The ID of the old room.
|
description: The ID of the old room.
|
||||||
event_id:
|
event_id:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-event-id
|
||||||
|
pattern: "^\\$"
|
||||||
deprecated: true
|
deprecated: true
|
||||||
x-changedInMatrixVersion:
|
x-changedInMatrixVersion:
|
||||||
"1.16": |-
|
"1.16": |-
|
||||||
|
|
@ -51,6 +57,8 @@ properties:
|
||||||
type: array
|
type: array
|
||||||
items:
|
items:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-user-id
|
||||||
|
pattern: "^@"
|
||||||
description: Additional user ID to consider a creator of the room, if supported by the room version.
|
description: Additional user ID to consider a creator of the room, if supported by the room version.
|
||||||
x-addedInMatrixVersion: "1.16"
|
x-addedInMatrixVersion: "1.16"
|
||||||
description: |-
|
description: |-
|
||||||
|
|
|
||||||
|
|
@ -55,6 +55,8 @@ properties:
|
||||||
enum: ['m.room_membership']
|
enum: ['m.room_membership']
|
||||||
room_id:
|
room_id:
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-room-id
|
||||||
|
pattern: "^!"
|
||||||
description: |-
|
description: |-
|
||||||
Required if `type` is `m.room_membership`. The room ID to check the
|
Required if `type` is `m.room_membership`. The room ID to check the
|
||||||
user's membership against. If the user is joined to this room, they
|
user's membership against. If the user is joined to this room, they
|
||||||
|
|
|
||||||
|
|
@ -76,6 +76,8 @@ properties:
|
||||||
join_authorised_via_users_server:
|
join_authorised_via_users_server:
|
||||||
x-addedInMatrixVersion: "1.2"
|
x-addedInMatrixVersion: "1.2"
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-user-id
|
||||||
|
pattern: "^@"
|
||||||
description: |-
|
description: |-
|
||||||
Usually found on `join` events, this field is used to denote which homeserver (through
|
Usually found on `join` events, this field is used to denote which homeserver (through
|
||||||
representation of a user with sufficient power level) authorised the user's join. More
|
representation of a user with sufficient power level) authorised the user's join. More
|
||||||
|
|
@ -127,6 +129,8 @@ properties:
|
||||||
`join`, the user ID sending the event does not need to match the user ID in the `state_key`,
|
`join`, the user ID sending the event does not need to match the user ID in the `state_key`,
|
||||||
unlike other events. Regular authorisation rules still apply.
|
unlike other events. Regular authorisation rules still apply.
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-user-id
|
||||||
|
pattern: "^@"
|
||||||
type:
|
type:
|
||||||
enum:
|
enum:
|
||||||
- m.room.member
|
- m.room.member
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,8 @@ properties:
|
||||||
redacts:
|
redacts:
|
||||||
description: The event ID that was redacted. Required for, and present starting in, room version 11.
|
description: The event ID that was redacted. Required for, and present starting in, room version 11.
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-event-id
|
||||||
|
pattern: "^\\$"
|
||||||
reason:
|
reason:
|
||||||
description: 'The reason for the redaction, if any.'
|
description: 'The reason for the redaction, if any.'
|
||||||
type: string
|
type: string
|
||||||
|
|
@ -17,6 +19,8 @@ properties:
|
||||||
redacts:
|
redacts:
|
||||||
description: Required for, and only present in, room versions 1 - 10. The event ID that was redacted.
|
description: Required for, and only present in, room versions 1 - 10. The event ID that was redacted.
|
||||||
type: string
|
type: string
|
||||||
|
format: mx-event-id
|
||||||
|
pattern: "^\\$"
|
||||||
type:
|
type:
|
||||||
enum:
|
enum:
|
||||||
- m.room.redaction
|
- m.room.redaction
|
||||||
|
|
|
||||||
|
|
@ -66,6 +66,11 @@ mx-mxc-uri:
|
||||||
url: client-server-api#matrix-content-mxc-uris
|
url: client-server-api#matrix-content-mxc-uris
|
||||||
# regex: "^mxc:\\/\\/"
|
# regex: "^mxc:\\/\\/"
|
||||||
|
|
||||||
|
mx-unpadded-base64:
|
||||||
|
title: Unpadded Base64
|
||||||
|
url: appendices#unpadded-base64
|
||||||
|
# no regex
|
||||||
|
|
||||||
uri:
|
uri:
|
||||||
title: URI
|
title: URI
|
||||||
url: https://datatracker.ietf.org/doc/html/rfc3986
|
url: https://datatracker.ietf.org/doc/html/rfc3986
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue