Fix third party signed definitions for join APIs
Fixes https://github.com/matrix-org/matrix-doc/issues/1978
This commit is contained in:
parent
5c268ef21f
commit
2b96d73305
3 changed files with 45 additions and 68 deletions
41
api/client-server/definitions/third_party_signed.yaml
Normal file
41
api/client-server/definitions/third_party_signed.yaml
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
# Copyright 2019 The Matrix.org Foundation C.I.C.
|
||||||
|
#
|
||||||
|
# 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: Third Party Signed
|
||||||
|
description: |-
|
||||||
|
A signature of an ``m.third_party_invite`` token to prove that this user
|
||||||
|
owns a third party identity which has been invited to the room.
|
||||||
|
properties:
|
||||||
|
sender:
|
||||||
|
type: string
|
||||||
|
description: The Matrix ID of the user who issued the invite.
|
||||||
|
example: "@alice:example.org"
|
||||||
|
mxid:
|
||||||
|
type: string
|
||||||
|
description: The Matrix ID of the invitee.
|
||||||
|
example: "@bob:example.org"
|
||||||
|
token:
|
||||||
|
type: string
|
||||||
|
description: The state key of the m.third_party_invite event.
|
||||||
|
example: "random8nonce"
|
||||||
|
signatures:
|
||||||
|
type: object
|
||||||
|
description: A signatures object containing a signature of the entire signed object.
|
||||||
|
title: Signatures
|
||||||
|
example: {
|
||||||
|
"example.org": {
|
||||||
|
"ed25519:0": "some9signature"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
required: ["sender", "mxid", "token", "signatures"]
|
|
@ -58,38 +58,9 @@ paths:
|
||||||
name: third_party_signed
|
name: third_party_signed
|
||||||
schema:
|
schema:
|
||||||
type: object
|
type: object
|
||||||
example: {
|
|
||||||
"third_party_signed": {
|
|
||||||
"sender": "@cat:the.hat",
|
|
||||||
"mxid": "@green:eggs.ham",
|
|
||||||
"token": "random8nonce",
|
|
||||||
"signatures": {
|
|
||||||
"horton.hears": {
|
|
||||||
"ed25519:0": "some9signature"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
properties:
|
properties:
|
||||||
third_party_signed:
|
third_party_signed:
|
||||||
type: object
|
$ref: "definitions/third_party_signed.yaml"
|
||||||
title: ThirdPartySigned
|
|
||||||
description: A signature of an ``m.third_party_invite`` token to prove that this user owns a third party identity which has been invited to the room.
|
|
||||||
properties:
|
|
||||||
sender:
|
|
||||||
type: string
|
|
||||||
description: The Matrix ID of the user who issued the invite.
|
|
||||||
mxid:
|
|
||||||
type: string
|
|
||||||
description: The Matrix ID of the invitee.
|
|
||||||
token:
|
|
||||||
type: string
|
|
||||||
description: The state key of the m.third_party_invite event.
|
|
||||||
signatures:
|
|
||||||
type: object
|
|
||||||
description: A signatures object containing a signature of the entire signed object.
|
|
||||||
title: Signatures
|
|
||||||
required: ["sender", "mxid", "token", "signatures"]
|
|
||||||
responses:
|
responses:
|
||||||
200:
|
200:
|
||||||
description: |-
|
description: |-
|
||||||
|
@ -163,45 +134,9 @@ paths:
|
||||||
name: third_party_signed
|
name: third_party_signed
|
||||||
schema:
|
schema:
|
||||||
type: object
|
type: object
|
||||||
example: {
|
|
||||||
"third_party_signed": {
|
|
||||||
"signed": {
|
|
||||||
"sender": "@cat:the.hat",
|
|
||||||
"mxid": "@green:eggs.ham",
|
|
||||||
"token": "random8nonce",
|
|
||||||
"signatures": {
|
|
||||||
"horton.hears": {
|
|
||||||
"ed25519:0": "some9signature"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
properties:
|
properties:
|
||||||
third_party_signed:
|
third_party_signed:
|
||||||
type: object
|
$ref: "definitions/third_party_signed.yaml"
|
||||||
title: ThirdPartySigned
|
|
||||||
description: A signature of an ``m.third_party_invite`` token to prove that this user owns a third party identity which has been invited to the room.
|
|
||||||
properties:
|
|
||||||
signed:
|
|
||||||
type: object
|
|
||||||
title: Signed
|
|
||||||
properties:
|
|
||||||
sender:
|
|
||||||
type: string
|
|
||||||
description: The Matrix ID of the user who issued the invite.
|
|
||||||
mxid:
|
|
||||||
type: string
|
|
||||||
description: The Matrix ID of the invitee.
|
|
||||||
token:
|
|
||||||
type: string
|
|
||||||
description: The state key of the m.third_party_invite event.
|
|
||||||
signatures:
|
|
||||||
type: object
|
|
||||||
description: A signatures object containing a signature of the entire signed object.
|
|
||||||
title: Signatures
|
|
||||||
required: ["sender", "mxid", "token", "signatures"]
|
|
||||||
required: ["signed"]
|
|
||||||
responses:
|
responses:
|
||||||
200:
|
200:
|
||||||
description: |-
|
description: |-
|
||||||
|
|
|
@ -38,7 +38,8 @@ When the invitee's homeserver receives the notification of the binding, it
|
||||||
should insert an ``m.room.member`` event into the room's graph for that user,
|
should insert an ``m.room.member`` event into the room's graph for that user,
|
||||||
with ``content.membership`` = ``invite``, as well as a
|
with ``content.membership`` = ``invite``, as well as a
|
||||||
``content.third_party_invite`` property which contains proof that the invitee
|
``content.third_party_invite`` property which contains proof that the invitee
|
||||||
does indeed own that third party identifier.
|
does indeed own that third party identifier. See the `m.room.member <#m-room-member>`_
|
||||||
|
schema for more information.
|
||||||
|
|
||||||
|
|
||||||
Events
|
Events
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue