|
|
@ -130,7 +130,7 @@ paths:
|
|
|
|
example: "anopaquestring"
|
|
|
|
example: "anopaquestring"
|
|
|
|
version:
|
|
|
|
version:
|
|
|
|
type: string
|
|
|
|
type: string
|
|
|
|
description: The backup version
|
|
|
|
description: The backup version.
|
|
|
|
example: "1"
|
|
|
|
example: "1"
|
|
|
|
required:
|
|
|
|
required:
|
|
|
|
- algorithm
|
|
|
|
- algorithm
|
|
|
@ -212,7 +212,7 @@ paths:
|
|
|
|
example: "anopaquestring"
|
|
|
|
example: "anopaquestring"
|
|
|
|
version:
|
|
|
|
version:
|
|
|
|
type: string
|
|
|
|
type: string
|
|
|
|
description: The backup version
|
|
|
|
description: The backup version.
|
|
|
|
example: "1"
|
|
|
|
example: "1"
|
|
|
|
required:
|
|
|
|
required:
|
|
|
|
- algorithm
|
|
|
|
- algorithm
|
|
|
@ -450,7 +450,7 @@ paths:
|
|
|
|
type: string
|
|
|
|
type: string
|
|
|
|
name: version
|
|
|
|
name: version
|
|
|
|
description: |-
|
|
|
|
description: |-
|
|
|
|
The backup from which to retrieve the key
|
|
|
|
The backup from which to retrieve the key.
|
|
|
|
required: true
|
|
|
|
required: true
|
|
|
|
x-example: "1"
|
|
|
|
x-example: "1"
|
|
|
|
- in: path
|
|
|
|
- in: path
|
|
|
@ -569,22 +569,7 @@ paths:
|
|
|
|
description: "The backup data"
|
|
|
|
description: "The backup data"
|
|
|
|
name: backupData
|
|
|
|
name: backupData
|
|
|
|
schema:
|
|
|
|
schema:
|
|
|
|
type: object
|
|
|
|
$ref: "definitions/room_key_backup.yaml"
|
|
|
|
properties:
|
|
|
|
|
|
|
|
sessions:
|
|
|
|
|
|
|
|
type: object
|
|
|
|
|
|
|
|
description: |-
|
|
|
|
|
|
|
|
A map of session IDs to key data.
|
|
|
|
|
|
|
|
additionalProperties:
|
|
|
|
|
|
|
|
allOf:
|
|
|
|
|
|
|
|
- $ref: "definitions/key_backup_data.yaml"
|
|
|
|
|
|
|
|
example: {
|
|
|
|
|
|
|
|
"sessionid1": {
|
|
|
|
|
|
|
|
"ephemeral": "base64+ephemeral+key",
|
|
|
|
|
|
|
|
"ciphertext": "base64+ciphertext+of+JSON+data",
|
|
|
|
|
|
|
|
"mac": "base64+mac+of+ciphertext"
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
responses:
|
|
|
|
responses:
|
|
|
|
200:
|
|
|
|
200:
|
|
|
|
description: The update succeeded
|
|
|
|
description: The update succeeded
|
|
|
@ -645,7 +630,7 @@ paths:
|
|
|
|
type: string
|
|
|
|
type: string
|
|
|
|
name: version
|
|
|
|
name: version
|
|
|
|
description: |-
|
|
|
|
description: |-
|
|
|
|
The backup from which to retrieve the key
|
|
|
|
The backup from which to retrieve the key.
|
|
|
|
required: true
|
|
|
|
required: true
|
|
|
|
x-example: "1"
|
|
|
|
x-example: "1"
|
|
|
|
- in: path
|
|
|
|
- in: path
|
|
|
@ -661,21 +646,7 @@ paths:
|
|
|
|
``sessions`` property will be returned (``{"sessions": {}}``).
|
|
|
|
``sessions`` property will be returned (``{"sessions": {}}``).
|
|
|
|
schema:
|
|
|
|
schema:
|
|
|
|
type: object
|
|
|
|
type: object
|
|
|
|
properties:
|
|
|
|
$ref: "definitions/room_key_backup.yaml"
|
|
|
|
sessions:
|
|
|
|
|
|
|
|
type: object
|
|
|
|
|
|
|
|
description: |-
|
|
|
|
|
|
|
|
A map of session IDs to key data.
|
|
|
|
|
|
|
|
additionalProperties:
|
|
|
|
|
|
|
|
allOf:
|
|
|
|
|
|
|
|
- $ref: "definitions/key_backup_data.yaml"
|
|
|
|
|
|
|
|
example: {
|
|
|
|
|
|
|
|
"sessionid1": {
|
|
|
|
|
|
|
|
"ephemeral": "base64+ephemeral+key",
|
|
|
|
|
|
|
|
"ciphertext": "base64+ciphertext+of+JSON+data",
|
|
|
|
|
|
|
|
"mac": "base64+mac+of+ciphertext"
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
404:
|
|
|
|
404:
|
|
|
|
description: |-
|
|
|
|
description: |-
|
|
|
|
The backup was not found.
|
|
|
|
The backup was not found.
|
|
|
@ -702,7 +673,7 @@ paths:
|
|
|
|
type: string
|
|
|
|
type: string
|
|
|
|
name: version
|
|
|
|
name: version
|
|
|
|
description: |-
|
|
|
|
description: |-
|
|
|
|
The backup from which to delete the key
|
|
|
|
The backup from which to delete the key.
|
|
|
|
required: true
|
|
|
|
required: true
|
|
|
|
x-example: "1"
|
|
|
|
x-example: "1"
|
|
|
|
- in: path
|
|
|
|
- in: path
|
|
|
@ -761,7 +732,7 @@ paths:
|
|
|
|
required: true
|
|
|
|
required: true
|
|
|
|
x-example: "1"
|
|
|
|
x-example: "1"
|
|
|
|
- in: body
|
|
|
|
- in: body
|
|
|
|
description: "The backup data"
|
|
|
|
description: "The backup data."
|
|
|
|
name: backupData
|
|
|
|
name: backupData
|
|
|
|
schema:
|
|
|
|
schema:
|
|
|
|
type: object
|
|
|
|
type: object
|
|
|
@ -769,23 +740,28 @@ paths:
|
|
|
|
rooms:
|
|
|
|
rooms:
|
|
|
|
type: object
|
|
|
|
type: object
|
|
|
|
description: |-
|
|
|
|
description: |-
|
|
|
|
A map of room IDs to session IDs to key data.
|
|
|
|
A map of room IDs to room key backup data.
|
|
|
|
additionalProperties:
|
|
|
|
additionalProperties:
|
|
|
|
type: object
|
|
|
|
allOf:
|
|
|
|
additionalProperties:
|
|
|
|
- $ref: "definitions/room_key_backup.yaml"
|
|
|
|
allOf:
|
|
|
|
|
|
|
|
- $ref: "definitions/key_backup_data.yaml"
|
|
|
|
|
|
|
|
example: {
|
|
|
|
example: {
|
|
|
|
"!room:example.org": {
|
|
|
|
"!room:example.org": {
|
|
|
|
"sessions": {
|
|
|
|
"sessions": {
|
|
|
|
"sessionid1": {
|
|
|
|
"sessionid1": {
|
|
|
|
"ephemeral": "base64+ephemeral+key",
|
|
|
|
"first_message_index": 1,
|
|
|
|
"ciphertext": "base64+ciphertext+of+JSON+data",
|
|
|
|
"forwarded_count": 0,
|
|
|
|
"mac": "base64+mac+of+ciphertext"
|
|
|
|
"is_verified": true,
|
|
|
|
|
|
|
|
"session_data": {
|
|
|
|
|
|
|
|
"ephemeral": "base64+ephemeral+key",
|
|
|
|
|
|
|
|
"ciphertext": "base64+ciphertext+of+JSON+data",
|
|
|
|
|
|
|
|
"mac": "base64+mac+of+ciphertext"
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
required:
|
|
|
|
|
|
|
|
- rooms
|
|
|
|
responses:
|
|
|
|
responses:
|
|
|
|
200:
|
|
|
|
200:
|
|
|
|
description: The update succeeded
|
|
|
|
description: The update succeeded
|
|
|
@ -846,8 +822,8 @@ paths:
|
|
|
|
type: string
|
|
|
|
type: string
|
|
|
|
name: version
|
|
|
|
name: version
|
|
|
|
description: |-
|
|
|
|
description: |-
|
|
|
|
The backup from which to retrieve the keys. If omitted, the keys are
|
|
|
|
The backup from which to retrieve the keys.
|
|
|
|
retrieved from the current backup.
|
|
|
|
required: true
|
|
|
|
x-example: "1"
|
|
|
|
x-example: "1"
|
|
|
|
responses:
|
|
|
|
responses:
|
|
|
|
200:
|
|
|
|
200:
|
|
|
@ -860,19 +836,22 @@ paths:
|
|
|
|
rooms:
|
|
|
|
rooms:
|
|
|
|
type: object
|
|
|
|
type: object
|
|
|
|
description: |-
|
|
|
|
description: |-
|
|
|
|
A map of room IDs to session IDs to key data.
|
|
|
|
A map of room IDs to room key backup data.
|
|
|
|
additionalProperties:
|
|
|
|
additionalProperties:
|
|
|
|
type: object
|
|
|
|
allOf:
|
|
|
|
additionalProperties:
|
|
|
|
- $ref: "definitions/room_key_backup.yaml"
|
|
|
|
allOf:
|
|
|
|
|
|
|
|
- $ref: "definitions/key_backup_data.yaml"
|
|
|
|
|
|
|
|
example: {
|
|
|
|
example: {
|
|
|
|
"!room:example.org": {
|
|
|
|
"!room:example.org": {
|
|
|
|
"sessions": {
|
|
|
|
"sessions": {
|
|
|
|
"sessionid1": {
|
|
|
|
"sessionid1": {
|
|
|
|
"ephemeral": "base64+ephemeral+key",
|
|
|
|
"first_message_index": 1,
|
|
|
|
"ciphertext": "base64+ciphertext+of+JSON+data",
|
|
|
|
"forwarded_count": 0,
|
|
|
|
"mac": "base64+mac+of+ciphertext"
|
|
|
|
"is_verified": true,
|
|
|
|
|
|
|
|
"session_data": {
|
|
|
|
|
|
|
|
"ephemeral": "base64+ephemeral+key",
|
|
|
|
|
|
|
|
"ciphertext": "base64+ciphertext+of+JSON+data",
|
|
|
|
|
|
|
|
"mac": "base64+mac+of+ciphertext"
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|