You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
16787 lines
711 KiB
16787 lines
711 KiB
{ |
|
"openapi": "3.1.0", |
|
"info": { |
|
"title": "spreed", |
|
"version": "0.0.1", |
|
"description": "Chat, video & audio-conferencing using WebRTC", |
|
"license": { |
|
"name": "agpl", |
|
"identifier": "AGPL-3.0-only" |
|
} |
|
}, |
|
"components": { |
|
"securitySchemes": { |
|
"basic_auth": { |
|
"type": "http", |
|
"scheme": "basic" |
|
}, |
|
"bearer_auth": { |
|
"type": "http", |
|
"scheme": "bearer" |
|
} |
|
}, |
|
"schemas": { |
|
"Bot": { |
|
"type": "object", |
|
"required": [ |
|
"description", |
|
"id", |
|
"name", |
|
"state" |
|
], |
|
"properties": { |
|
"description": { |
|
"type": "string", |
|
"nullable": true |
|
}, |
|
"id": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"name": { |
|
"type": "string" |
|
}, |
|
"state": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
} |
|
}, |
|
"BotWithDetails": { |
|
"allOf": [ |
|
{ |
|
"$ref": "#/components/schemas/Bot" |
|
}, |
|
{ |
|
"type": "object", |
|
"required": [ |
|
"error_count", |
|
"features", |
|
"last_error_date", |
|
"last_error_message", |
|
"url", |
|
"url_hash" |
|
], |
|
"properties": { |
|
"error_count": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"features": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"last_error_date": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"last_error_message": { |
|
"type": "string" |
|
}, |
|
"url": { |
|
"type": "string" |
|
}, |
|
"url_hash": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
] |
|
}, |
|
"BotWithDetailsAndSecret": { |
|
"allOf": [ |
|
{ |
|
"$ref": "#/components/schemas/BotWithDetails" |
|
}, |
|
{ |
|
"type": "object", |
|
"required": [ |
|
"secret" |
|
], |
|
"properties": { |
|
"secret": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
] |
|
}, |
|
"CallPeer": { |
|
"type": "object", |
|
"required": [ |
|
"actorId", |
|
"actorType", |
|
"displayName", |
|
"lastPing", |
|
"sessionId", |
|
"token" |
|
], |
|
"properties": { |
|
"actorId": { |
|
"type": "string" |
|
}, |
|
"actorType": { |
|
"type": "string" |
|
}, |
|
"displayName": { |
|
"type": "string" |
|
}, |
|
"lastPing": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"sessionId": { |
|
"type": "string" |
|
}, |
|
"token": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"ChatMentionSuggestion": { |
|
"type": "object", |
|
"required": [ |
|
"id", |
|
"label", |
|
"source", |
|
"status", |
|
"statusClearAt", |
|
"statusIcon", |
|
"statusMessage" |
|
], |
|
"properties": { |
|
"id": { |
|
"type": "string" |
|
}, |
|
"label": { |
|
"type": "string" |
|
}, |
|
"source": { |
|
"type": "string" |
|
}, |
|
"status": { |
|
"type": "string", |
|
"nullable": true |
|
}, |
|
"statusClearAt": { |
|
"type": "integer", |
|
"format": "int64", |
|
"nullable": true |
|
}, |
|
"statusIcon": { |
|
"type": "string", |
|
"nullable": true |
|
}, |
|
"statusMessage": { |
|
"type": "string", |
|
"nullable": true |
|
} |
|
} |
|
}, |
|
"ChatMessage": { |
|
"type": "object", |
|
"required": [ |
|
"actorDisplayName", |
|
"actorId", |
|
"actorType", |
|
"expirationTimestamp", |
|
"id", |
|
"isReplyable", |
|
"markdown", |
|
"message", |
|
"messageParameters", |
|
"messageType", |
|
"reactions", |
|
"referenceId", |
|
"systemMessage", |
|
"timestamp", |
|
"token" |
|
], |
|
"properties": { |
|
"actorDisplayName": { |
|
"type": "string" |
|
}, |
|
"actorId": { |
|
"type": "string" |
|
}, |
|
"actorType": { |
|
"type": "string" |
|
}, |
|
"deleted": { |
|
"type": "boolean" |
|
}, |
|
"expirationTimestamp": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"id": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"isReplyable": { |
|
"type": "boolean" |
|
}, |
|
"markdown": { |
|
"type": "boolean" |
|
}, |
|
"message": { |
|
"type": "string" |
|
}, |
|
"messageParameters": { |
|
"type": "object", |
|
"additionalProperties": { |
|
"type": "object", |
|
"additionalProperties": { |
|
"type": "object" |
|
} |
|
} |
|
}, |
|
"messageType": { |
|
"type": "string" |
|
}, |
|
"reactions": { |
|
"type": "object", |
|
"additionalProperties": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
"referenceId": { |
|
"type": "string" |
|
}, |
|
"systemMessage": { |
|
"type": "string" |
|
}, |
|
"timestamp": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"token": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"ChatMessageWithParent": { |
|
"allOf": [ |
|
{ |
|
"$ref": "#/components/schemas/ChatMessage" |
|
}, |
|
{ |
|
"type": "object", |
|
"properties": { |
|
"parent": { |
|
"$ref": "#/components/schemas/ChatMessage" |
|
} |
|
} |
|
} |
|
] |
|
}, |
|
"ChatReminder": { |
|
"type": "object", |
|
"required": [ |
|
"messageId", |
|
"timestamp", |
|
"token", |
|
"userId" |
|
], |
|
"properties": { |
|
"messageId": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"timestamp": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"token": { |
|
"type": "string" |
|
}, |
|
"userId": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"FederationInvite": { |
|
"type": "object", |
|
"required": [ |
|
"access_token", |
|
"id", |
|
"local_room_id", |
|
"remote_attendee_id", |
|
"remote_server_url", |
|
"remote_token", |
|
"user_id" |
|
], |
|
"properties": { |
|
"access_token": { |
|
"type": "string" |
|
}, |
|
"id": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"local_room_id": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"remote_attendee_id": { |
|
"type": "string" |
|
}, |
|
"remote_server_url": { |
|
"type": "string" |
|
}, |
|
"remote_token": { |
|
"type": "string" |
|
}, |
|
"user_id": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"Matterbridge": { |
|
"type": "object", |
|
"required": [ |
|
"enabled", |
|
"parts", |
|
"pid" |
|
], |
|
"properties": { |
|
"enabled": { |
|
"type": "boolean" |
|
}, |
|
"parts": { |
|
"$ref": "#/components/schemas/MatterbridgeConfigFields" |
|
}, |
|
"pid": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
} |
|
}, |
|
"MatterbridgeConfigFields": { |
|
"type": "array", |
|
"items": { |
|
"type": "object", |
|
"additionalProperties": { |
|
"type": "object" |
|
} |
|
} |
|
}, |
|
"MatterbridgeProcessState": { |
|
"type": "object", |
|
"required": [ |
|
"log", |
|
"running" |
|
], |
|
"properties": { |
|
"log": { |
|
"type": "string" |
|
}, |
|
"running": { |
|
"type": "boolean" |
|
} |
|
} |
|
}, |
|
"MatterbridgeWithProcessState": { |
|
"allOf": [ |
|
{ |
|
"$ref": "#/components/schemas/Matterbridge" |
|
}, |
|
{ |
|
"$ref": "#/components/schemas/MatterbridgeProcessState" |
|
} |
|
] |
|
}, |
|
"OCSMeta": { |
|
"type": "object", |
|
"required": [ |
|
"status", |
|
"statuscode" |
|
], |
|
"properties": { |
|
"status": { |
|
"type": "string" |
|
}, |
|
"statuscode": { |
|
"type": "integer" |
|
}, |
|
"message": { |
|
"type": "string" |
|
}, |
|
"totalitems": { |
|
"type": "string" |
|
}, |
|
"itemsperpage": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"Participant": { |
|
"type": "object", |
|
"required": [ |
|
"actorId", |
|
"actorType", |
|
"attendeeId", |
|
"attendeePermissions", |
|
"attendeePin", |
|
"displayName", |
|
"inCall", |
|
"lastPing", |
|
"participantType", |
|
"permissions", |
|
"roomToken", |
|
"sessionIds" |
|
], |
|
"properties": { |
|
"actorId": { |
|
"type": "string" |
|
}, |
|
"actorType": { |
|
"type": "string" |
|
}, |
|
"attendeeId": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"attendeePermissions": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"attendeePin": { |
|
"type": "string" |
|
}, |
|
"displayName": { |
|
"type": "string" |
|
}, |
|
"inCall": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"lastPing": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"participantType": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"permissions": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"roomToken": { |
|
"type": "string" |
|
}, |
|
"sessionIds": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
}, |
|
"status": { |
|
"type": "string" |
|
}, |
|
"statusClearAt": { |
|
"type": "integer", |
|
"format": "int64", |
|
"nullable": true |
|
}, |
|
"statusIcon": { |
|
"type": "string", |
|
"nullable": true |
|
}, |
|
"statusMessage": { |
|
"type": "string", |
|
"nullable": true |
|
}, |
|
"phoneNumber": { |
|
"type": "string", |
|
"nullable": true |
|
}, |
|
"callId": { |
|
"type": "string", |
|
"nullable": true |
|
} |
|
} |
|
}, |
|
"Poll": { |
|
"type": "object", |
|
"required": [ |
|
"actorDisplayName", |
|
"actorId", |
|
"actorType", |
|
"id", |
|
"maxVotes", |
|
"options", |
|
"question", |
|
"resultMode", |
|
"status" |
|
], |
|
"properties": { |
|
"actorDisplayName": { |
|
"type": "string" |
|
}, |
|
"actorId": { |
|
"type": "string" |
|
}, |
|
"actorType": { |
|
"type": "string" |
|
}, |
|
"details": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/PollVote" |
|
} |
|
}, |
|
"id": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"maxVotes": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"numVoters": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"options": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
}, |
|
"question": { |
|
"type": "string" |
|
}, |
|
"resultMode": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"status": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"votedSelf": { |
|
"type": "array", |
|
"items": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
"votes": { |
|
"type": "object", |
|
"additionalProperties": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
} |
|
} |
|
}, |
|
"PollVote": { |
|
"type": "object", |
|
"required": [ |
|
"actorDisplayName", |
|
"actorId", |
|
"actorType", |
|
"optionId" |
|
], |
|
"properties": { |
|
"actorDisplayName": { |
|
"type": "string" |
|
}, |
|
"actorId": { |
|
"type": "string" |
|
}, |
|
"actorType": { |
|
"type": "string" |
|
}, |
|
"optionId": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
} |
|
}, |
|
"PublicCapabilities": { |
|
"anyOf": [ |
|
{ |
|
"type": "object", |
|
"required": [ |
|
"spreed" |
|
], |
|
"properties": { |
|
"spreed": { |
|
"type": "object", |
|
"required": [ |
|
"features", |
|
"config", |
|
"version" |
|
], |
|
"properties": { |
|
"features": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
}, |
|
"config": { |
|
"type": "object", |
|
"required": [ |
|
"attachments", |
|
"call", |
|
"chat", |
|
"conversations", |
|
"previews", |
|
"signaling" |
|
], |
|
"properties": { |
|
"attachments": { |
|
"type": "object", |
|
"required": [ |
|
"allowed" |
|
], |
|
"properties": { |
|
"allowed": { |
|
"type": "boolean" |
|
}, |
|
"folder": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"call": { |
|
"type": "object", |
|
"required": [ |
|
"enabled", |
|
"breakout-rooms", |
|
"recording", |
|
"supported-reactions", |
|
"predefined-backgrounds", |
|
"can-upload-background" |
|
], |
|
"properties": { |
|
"enabled": { |
|
"type": "boolean" |
|
}, |
|
"breakout-rooms": { |
|
"type": "boolean" |
|
}, |
|
"recording": { |
|
"type": "boolean" |
|
}, |
|
"recording-consent": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"supported-reactions": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
}, |
|
"predefined-backgrounds": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
}, |
|
"can-upload-background": { |
|
"type": "boolean" |
|
}, |
|
"sip-enabled": { |
|
"type": "boolean" |
|
}, |
|
"sip-dialout-enabled": { |
|
"type": "boolean" |
|
}, |
|
"can-enable-sip": { |
|
"type": "boolean" |
|
} |
|
} |
|
}, |
|
"chat": { |
|
"type": "object", |
|
"required": [ |
|
"max-length", |
|
"read-privacy", |
|
"typing-privacy" |
|
], |
|
"properties": { |
|
"max-length": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"read-privacy": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"has-translation-providers": { |
|
"type": "boolean" |
|
}, |
|
"typing-privacy": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"translations": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
}, |
|
"conversations": { |
|
"type": "object", |
|
"required": [ |
|
"can-create" |
|
], |
|
"properties": { |
|
"can-create": { |
|
"type": "boolean" |
|
} |
|
} |
|
}, |
|
"previews": { |
|
"type": "object", |
|
"required": [ |
|
"max-gif-size" |
|
], |
|
"properties": { |
|
"max-gif-size": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
} |
|
}, |
|
"signaling": { |
|
"type": "object", |
|
"required": [ |
|
"session-ping-limit" |
|
], |
|
"properties": { |
|
"session-ping-limit": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"hello-v2-token-key": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"version": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
{ |
|
"type": "array", |
|
"maxLength": 0 |
|
} |
|
] |
|
}, |
|
"Reaction": { |
|
"type": "object", |
|
"required": [ |
|
"actorDisplayName", |
|
"actorId", |
|
"actorType", |
|
"timestamp" |
|
], |
|
"properties": { |
|
"actorDisplayName": { |
|
"type": "string" |
|
}, |
|
"actorId": { |
|
"type": "string" |
|
}, |
|
"actorType": { |
|
"type": "string" |
|
}, |
|
"timestamp": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
} |
|
}, |
|
"Room": { |
|
"type": "object", |
|
"required": [ |
|
"actorId", |
|
"actorType", |
|
"attendeeId", |
|
"attendeePermissions", |
|
"attendeePin", |
|
"avatarVersion", |
|
"breakoutRoomMode", |
|
"breakoutRoomStatus", |
|
"callFlag", |
|
"callPermissions", |
|
"callRecording", |
|
"callStartTime", |
|
"canDeleteConversation", |
|
"canEnableSIP", |
|
"canLeaveConversation", |
|
"canStartCall", |
|
"defaultPermissions", |
|
"description", |
|
"displayName", |
|
"hasCall", |
|
"hasPassword", |
|
"id", |
|
"isCustomAvatar", |
|
"isFavorite", |
|
"lastActivity", |
|
"lastCommonReadMessage", |
|
"lastMessage", |
|
"lastPing", |
|
"lastReadMessage", |
|
"listable", |
|
"lobbyState", |
|
"lobbyTimer", |
|
"messageExpiration", |
|
"name", |
|
"notificationCalls", |
|
"notificationLevel", |
|
"objectId", |
|
"objectType", |
|
"participantFlags", |
|
"participantType", |
|
"permissions", |
|
"readOnly", |
|
"sessionId", |
|
"sipEnabled", |
|
"token", |
|
"type", |
|
"unreadMention", |
|
"unreadMentionDirect", |
|
"unreadMessages" |
|
], |
|
"properties": { |
|
"actorId": { |
|
"type": "string" |
|
}, |
|
"actorType": { |
|
"type": "string" |
|
}, |
|
"attendeeId": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"attendeePermissions": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"attendeePin": { |
|
"type": "string", |
|
"nullable": true |
|
}, |
|
"avatarVersion": { |
|
"type": "string" |
|
}, |
|
"breakoutRoomMode": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"breakoutRoomStatus": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"callFlag": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"callPermissions": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"callRecording": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"callStartTime": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"canDeleteConversation": { |
|
"type": "boolean" |
|
}, |
|
"canEnableSIP": { |
|
"type": "boolean" |
|
}, |
|
"canLeaveConversation": { |
|
"type": "boolean" |
|
}, |
|
"canStartCall": { |
|
"type": "boolean" |
|
}, |
|
"defaultPermissions": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"description": { |
|
"type": "string" |
|
}, |
|
"displayName": { |
|
"type": "string" |
|
}, |
|
"hasCall": { |
|
"type": "boolean" |
|
}, |
|
"hasPassword": { |
|
"type": "boolean" |
|
}, |
|
"id": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"isCustomAvatar": { |
|
"type": "boolean" |
|
}, |
|
"isFavorite": { |
|
"type": "boolean" |
|
}, |
|
"lastActivity": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"lastCommonReadMessage": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"lastMessage": { |
|
"anyOf": [ |
|
{ |
|
"$ref": "#/components/schemas/ChatMessage" |
|
}, |
|
{ |
|
"type": "array", |
|
"maxLength": 0 |
|
} |
|
] |
|
}, |
|
"lastPing": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"lastReadMessage": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"listable": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"lobbyState": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"lobbyTimer": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"messageExpiration": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"name": { |
|
"type": "string" |
|
}, |
|
"notificationCalls": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"notificationLevel": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"objectId": { |
|
"type": "string" |
|
}, |
|
"objectType": { |
|
"type": "string" |
|
}, |
|
"participantFlags": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"participantType": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"permissions": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"readOnly": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"recordingConsent": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"sessionId": { |
|
"type": "string" |
|
}, |
|
"sipEnabled": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"status": { |
|
"type": "string" |
|
}, |
|
"statusClearAt": { |
|
"type": "integer", |
|
"format": "int64", |
|
"nullable": true |
|
}, |
|
"statusIcon": { |
|
"type": "string", |
|
"nullable": true |
|
}, |
|
"statusMessage": { |
|
"type": "string", |
|
"nullable": true |
|
}, |
|
"token": { |
|
"type": "string" |
|
}, |
|
"type": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"unreadMention": { |
|
"type": "boolean" |
|
}, |
|
"unreadMentionDirect": { |
|
"type": "boolean" |
|
}, |
|
"unreadMessages": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
} |
|
}, |
|
"SignalingSession": { |
|
"type": "object", |
|
"required": [ |
|
"inCall", |
|
"lastPing", |
|
"participantPermissions", |
|
"roomId", |
|
"sessionId", |
|
"userId" |
|
], |
|
"properties": { |
|
"inCall": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"lastPing": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"participantPermissions": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"roomId": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"sessionId": { |
|
"type": "string" |
|
}, |
|
"userId": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"SignalingSettings": { |
|
"type": "object", |
|
"required": [ |
|
"helloAuthParams", |
|
"hideWarning", |
|
"server", |
|
"signalingMode", |
|
"sipDialinInfo", |
|
"stunservers", |
|
"ticket", |
|
"turnservers", |
|
"userId" |
|
], |
|
"properties": { |
|
"helloAuthParams": { |
|
"type": "object", |
|
"required": [ |
|
"1.0", |
|
"2.0" |
|
], |
|
"properties": { |
|
"1.0": { |
|
"type": "object", |
|
"required": [ |
|
"userid", |
|
"ticket" |
|
], |
|
"properties": { |
|
"userid": { |
|
"type": "string", |
|
"nullable": true |
|
}, |
|
"ticket": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"2.0": { |
|
"type": "object", |
|
"required": [ |
|
"token" |
|
], |
|
"properties": { |
|
"token": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"hideWarning": { |
|
"type": "boolean" |
|
}, |
|
"server": { |
|
"type": "string" |
|
}, |
|
"signalingMode": { |
|
"type": "string" |
|
}, |
|
"sipDialinInfo": { |
|
"type": "string" |
|
}, |
|
"stunservers": { |
|
"type": "array", |
|
"items": { |
|
"type": "object", |
|
"required": [ |
|
"urls" |
|
], |
|
"properties": { |
|
"urls": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"ticket": { |
|
"type": "string" |
|
}, |
|
"turnservers": { |
|
"type": "array", |
|
"items": { |
|
"type": "object", |
|
"required": [ |
|
"urls", |
|
"username", |
|
"credential" |
|
], |
|
"properties": { |
|
"urls": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
}, |
|
"username": { |
|
"type": "string" |
|
}, |
|
"credential": { |
|
"type": "object" |
|
} |
|
} |
|
} |
|
}, |
|
"userId": { |
|
"type": "string", |
|
"nullable": true |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"paths": { |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/avatar": { |
|
"post": { |
|
"operationId": "avatar-upload-avatar", |
|
"summary": "Upload an avatar for a room", |
|
"tags": [ |
|
"avatar" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Avatar uploaded successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Avatar invalid", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"message" |
|
], |
|
"properties": { |
|
"message": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"get": { |
|
"operationId": "avatar-get-avatar", |
|
"summary": "Get the avatar of a room", |
|
"tags": [ |
|
"avatar" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "darkTheme", |
|
"in": "query", |
|
"description": "Theme used for background", |
|
"schema": { |
|
"type": "integer", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Room avatar returned", |
|
"content": { |
|
"*/*": { |
|
"schema": { |
|
"type": "string", |
|
"format": "binary" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "avatar-delete-avatar", |
|
"summary": "Delete the avatar of a room", |
|
"tags": [ |
|
"avatar" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Avatar removed successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/avatar/emoji": { |
|
"post": { |
|
"operationId": "avatar-emoji-avatar", |
|
"summary": "Set an emoji as avatar", |
|
"tags": [ |
|
"avatar" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "emoji", |
|
"in": "query", |
|
"description": "Emoji", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "color", |
|
"in": "query", |
|
"description": "Color of the emoji", |
|
"schema": { |
|
"type": "string", |
|
"nullable": true |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Avatar set successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Setting emoji avatar is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"message" |
|
], |
|
"properties": { |
|
"message": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/avatar/dark": { |
|
"get": { |
|
"operationId": "avatar-get-avatar-dark", |
|
"summary": "Get the dark mode avatar of a room", |
|
"tags": [ |
|
"avatar" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Room avatar returned", |
|
"content": { |
|
"*/*": { |
|
"schema": { |
|
"type": "string", |
|
"format": "binary" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/bot/{token}/message": { |
|
"post": { |
|
"operationId": "bot-send-message", |
|
"summary": "Sends a new chat message to the given room", |
|
"description": "The author and timestamp are automatically set to the current user/guest and time.", |
|
"tags": [ |
|
"bot" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "message", |
|
"in": "query", |
|
"description": "The message to send", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "referenceId", |
|
"in": "query", |
|
"description": "For the message to be able to later identify it again", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "replyTo", |
|
"in": "query", |
|
"description": "Parent id which this message is a reply to", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "silent", |
|
"in": "query", |
|
"description": "If sent silent the chat message will not create any notifications", |
|
"schema": { |
|
"type": "integer", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"description": "Conversation token", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"201": { |
|
"description": "Message sent successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Sending message is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"401": { |
|
"description": "Sending message is not allowed", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"413": { |
|
"description": "Message too long", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/bot/{token}/reaction/{messageId}": { |
|
"post": { |
|
"operationId": "bot-react", |
|
"summary": "Adds a reaction to a chat message", |
|
"tags": [ |
|
"bot" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "reaction", |
|
"in": "query", |
|
"description": "Reaction to add", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"description": "Conversation token", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "messageId", |
|
"in": "path", |
|
"description": "ID of the message", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Reaction already exists", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"201": { |
|
"description": "Reacted successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Reacting is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"401": { |
|
"description": "Reacting is not allowed", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Reaction not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "bot-delete-reaction", |
|
"summary": "Deletes a reaction from a chat message", |
|
"tags": [ |
|
"bot" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "reaction", |
|
"in": "query", |
|
"description": "Reaction to delete", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"description": "Conversation token", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "messageId", |
|
"in": "path", |
|
"description": "ID of the message", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Reaction deleted successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Reacting is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Reaction not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"401": { |
|
"description": "Reacting is not allowed", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/bot/admin": { |
|
"get": { |
|
"operationId": "bot-admin-list-bots", |
|
"summary": "List admin bots", |
|
"description": "This endpoint requires admin access", |
|
"tags": [ |
|
"bot" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Bot list returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/BotWithDetails" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/bot/{token}": { |
|
"get": { |
|
"operationId": "bot-list-bots", |
|
"summary": "List bots", |
|
"tags": [ |
|
"bot" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Bot list returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Bot" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/bot/{token}/{botId}": { |
|
"post": { |
|
"operationId": "bot-enable-bot", |
|
"summary": "Enables a bot", |
|
"tags": [ |
|
"bot" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "botId", |
|
"in": "path", |
|
"description": "ID of the bot", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Bot already enabled", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Bot", |
|
"nullable": true |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"201": { |
|
"description": "Bot enabled successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Bot", |
|
"nullable": true |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Enabling bot errored", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "bot-disable-bot", |
|
"summary": "Disables a bot", |
|
"tags": [ |
|
"bot" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "botId", |
|
"in": "path", |
|
"description": "ID of the bot", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Bot disabled successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Bot", |
|
"nullable": true |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Disabling bot errored", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/breakout-rooms/{token}": { |
|
"post": { |
|
"operationId": "breakout_room-configure-breakout-rooms", |
|
"summary": "Configure the breakout rooms", |
|
"tags": [ |
|
"breakout_room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "mode", |
|
"in": "query", |
|
"description": "Mode of the breakout rooms", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "amount", |
|
"in": "query", |
|
"description": "Number of breakout rooms", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "attendeeMap", |
|
"in": "query", |
|
"description": "Mapping of the attendees to breakout rooms", |
|
"schema": { |
|
"type": "string", |
|
"default": "[]" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Breakout rooms configured successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Configuring breakout rooms errored", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "breakout_room-remove-breakout-rooms", |
|
"summary": "Remove the breakout rooms", |
|
"tags": [ |
|
"breakout_room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Breakout rooms removed successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/breakout-rooms/{token}/broadcast": { |
|
"post": { |
|
"operationId": "breakout_room-broadcast-chat-message", |
|
"summary": "Broadcast a chat message to all breakout rooms", |
|
"tags": [ |
|
"breakout_room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "message", |
|
"in": "query", |
|
"description": "Message to broadcast", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"201": { |
|
"description": "Chat message broadcasted successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Broadcasting chat message is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"413": { |
|
"description": "Chat message too long", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/breakout-rooms/{token}/attendees": { |
|
"post": { |
|
"operationId": "breakout_room-apply-attendee-map", |
|
"summary": "Apply an attendee map to the breakout rooms", |
|
"tags": [ |
|
"breakout_room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "attendeeMap", |
|
"in": "query", |
|
"description": "JSON encoded mapping of the attendees to breakout rooms `array<int, int>`", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Attendee map applied successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Applying attendee map is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/breakout-rooms/{token}/request-assistance": { |
|
"post": { |
|
"operationId": "breakout_room-request-assistance", |
|
"summary": "Request assistance", |
|
"tags": [ |
|
"breakout_room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Assistance requested successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Requesting assistance is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "breakout_room-reset-request-for-assistance", |
|
"summary": "Reset the request for assistance", |
|
"tags": [ |
|
"breakout_room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Request for assistance reset successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Resetting the request for assistance is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/breakout-rooms/{token}/rooms": { |
|
"post": { |
|
"operationId": "breakout_room-start-breakout-rooms", |
|
"summary": "Start the breakout rooms", |
|
"tags": [ |
|
"breakout_room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Breakout rooms started successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Starting breakout rooms is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "breakout_room-stop-breakout-rooms", |
|
"summary": "Stop the breakout rooms", |
|
"tags": [ |
|
"breakout_room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Breakout rooms stopped successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Stopping breakout rooms is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/breakout-rooms/{token}/switch": { |
|
"post": { |
|
"operationId": "breakout_room-switch-breakout-room", |
|
"summary": "Switch to another breakout room", |
|
"tags": [ |
|
"breakout_room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "target", |
|
"in": "query", |
|
"description": "Target breakout room", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Switched to breakout room successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Switching to breakout room is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/call/{token}": { |
|
"get": { |
|
"operationId": "call-get-peers-for-call", |
|
"summary": "Get the peers for a call", |
|
"tags": [ |
|
"call" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "List of peers in the call returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/CallPeer" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"post": { |
|
"operationId": "call-join-call", |
|
"summary": "Join a call", |
|
"tags": [ |
|
"call" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "flags", |
|
"in": "query", |
|
"description": "In-Call flags", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"nullable": true |
|
} |
|
}, |
|
{ |
|
"name": "forcePermissions", |
|
"in": "query", |
|
"description": "In-call permissions", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"nullable": true |
|
} |
|
}, |
|
{ |
|
"name": "silent", |
|
"in": "query", |
|
"description": "Join the call silently", |
|
"schema": { |
|
"type": "integer", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "recordingConsent", |
|
"in": "query", |
|
"description": "When the user ticked a checkbox and agreed with being recorded (Only needed when the `config => call => recording-consent` capability is set to {@see RecordingService::CONSENT_REQUIRED_YES} or the capability is {@see RecordingService::CONSENT_REQUIRED_OPTIONAL} and the conversation `recordingConsent` value is {@see RecordingService::CONSENT_REQUIRED_YES} )", |
|
"schema": { |
|
"type": "integer", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Call joined successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Call not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "No recording consent was given", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"put": { |
|
"operationId": "call-update-call-flags", |
|
"summary": "Update the in-call flags", |
|
"tags": [ |
|
"call" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "flags", |
|
"in": "query", |
|
"description": "New flags", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "In-call flags updated successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Updating in-call flags is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Call session not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "call-leave-call", |
|
"summary": "Leave a call", |
|
"tags": [ |
|
"call" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "all", |
|
"in": "query", |
|
"description": "whether to also terminate the call for all participants", |
|
"schema": { |
|
"type": "integer", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Call left successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Call session not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/call/{token}/ring/{attendeeId}": { |
|
"post": { |
|
"operationId": "call-ring-attendee", |
|
"summary": "Ring an attendee", |
|
"tags": [ |
|
"call" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "attendeeId", |
|
"in": "path", |
|
"description": "ID of the attendee to ring", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Attendee rang successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Ringing attendee is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/call/{token}/dialout/{attendeeId}": { |
|
"post": { |
|
"operationId": "call-sip-dial-out", |
|
"summary": "Call a SIP dial-out attendee", |
|
"tags": [ |
|
"call" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "attendeeId", |
|
"in": "path", |
|
"description": "ID of the attendee to call", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"201": { |
|
"description": "Dial-out initiated successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
}, |
|
"message": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "SIP dial-out not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
}, |
|
"message": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Participant could not be found or is a wrong type", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
}, |
|
"message": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"501": { |
|
"description": "SIP dial-out is not configured on the server", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
}, |
|
"message": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/certificate/expiration": { |
|
"get": { |
|
"operationId": "certificate-get-certificate-expiration", |
|
"summary": "Get the certificate expiration for a host", |
|
"description": "This endpoint requires admin access", |
|
"tags": [ |
|
"certificate" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "host", |
|
"in": "query", |
|
"description": "Host to check", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Certificate expiration returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"expiration_in_days" |
|
], |
|
"properties": { |
|
"expiration_in_days": { |
|
"type": "integer", |
|
"format": "int64", |
|
"nullable": true |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Getting certificate expiration is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"message" |
|
], |
|
"properties": { |
|
"message": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/chat/{token}": { |
|
"get": { |
|
"operationId": "chat-receive-messages", |
|
"summary": "Receives chat messages from the given room", |
|
"description": "- Receiving the history ($lookIntoFuture=0): The next $limit messages after $lastKnownMessageId will be returned. The new $lastKnownMessageId for the follow up query is available as `X-Chat-Last-Given` header.\n- Looking into the future ($lookIntoFuture=1): If there are currently no messages the response will not be sent immediately. Instead, HTTP connection will be kept open waiting for new messages to arrive and, when they do, then the response will be sent. The connection will not be kept open indefinitely, though; the number of seconds to wait for new messages to arrive can be set using the timeout parameter; the default timeout is 30 seconds, maximum timeout is 60 seconds. If the timeout ends a successful but empty response will be sent. If messages have been returned (status=200) the new $lastKnownMessageId for the follow up query is available as `X-Chat-Last-Given` header.\nThe limit specifies the maximum number of messages that will be returned, although the actual number of returned messages could be lower if some messages are not visible to the participant. Note that if none of the messages are visible to the participant the returned number of messages will be 0, yet the status will still be 200. Also note that `X-Chat-Last-Given` may reference a message not visible and thus not returned, but it should be used nevertheless as the $lastKnownMessageId for the follow-up query.", |
|
"tags": [ |
|
"chat" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "lookIntoFuture", |
|
"in": "query", |
|
"description": "Polling for new messages (1) or getting the history of the chat (0)", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "limit", |
|
"in": "query", |
|
"description": "Number of chat messages to receive (100 by default, 200 at most)", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 100 |
|
} |
|
}, |
|
{ |
|
"name": "lastKnownMessageId", |
|
"in": "query", |
|
"description": "The last known message (serves as offset)", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "lastCommonReadId", |
|
"in": "query", |
|
"description": "The last known common read message (so the response is 200 instead of 304 when it changes even when there are no messages)", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "timeout", |
|
"in": "query", |
|
"description": "Number of seconds to wait for new messages (30 by default, 30 at most)", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 30 |
|
} |
|
}, |
|
{ |
|
"name": "setReadMarker", |
|
"in": "query", |
|
"description": "Automatically set the last read marker when 1, if your client does this itself via chat/{token}/read set to 0", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 1 |
|
} |
|
}, |
|
{ |
|
"name": "includeLastKnown", |
|
"in": "query", |
|
"description": "Include the $lastKnownMessageId in the messages when 1 (default 0)", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "noStatusUpdate", |
|
"in": "query", |
|
"description": "When the user status should not be automatically set to online set to 1 (default 0)", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "markNotificationsAsRead", |
|
"in": "query", |
|
"description": "Set to 0 when notifications should not be marked as read (default 1)", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 1 |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Messages returned", |
|
"headers": { |
|
"X-Chat-Last-Common-Read": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
"X-Chat-Last-Given": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/ChatMessageWithParent" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"304": { |
|
"description": "No messages", |
|
"headers": { |
|
"X-Chat-Last-Common-Read": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
"X-Chat-Last-Given": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/ChatMessageWithParent" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"post": { |
|
"operationId": "chat-send-message", |
|
"summary": "Sends a new chat message to the given room", |
|
"description": "The author and timestamp are automatically set to the current user/guest and time.", |
|
"tags": [ |
|
"chat" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "message", |
|
"in": "query", |
|
"description": "the message to send", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "actorDisplayName", |
|
"in": "query", |
|
"description": "for guests", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "referenceId", |
|
"in": "query", |
|
"description": "for the message to be able to later identify it again", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "replyTo", |
|
"in": "query", |
|
"description": "Parent id which this message is a reply to", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "silent", |
|
"in": "query", |
|
"description": "If sent silent the chat message will not create any notifications", |
|
"schema": { |
|
"type": "integer", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"201": { |
|
"description": "Message sent successfully", |
|
"headers": { |
|
"X-Chat-Last-Common-Read": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/ChatMessageWithParent", |
|
"nullable": true |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Sending message is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Actor not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"413": { |
|
"description": "Message too long", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "chat-clear-history", |
|
"summary": "Clear the chat history", |
|
"tags": [ |
|
"chat" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "History cleared successfully", |
|
"headers": { |
|
"X-Chat-Last-Common-Read": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/ChatMessage" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"202": { |
|
"description": "History cleared successfully, but Matterbridge is configured, so the information can be replicated elsewhere", |
|
"headers": { |
|
"X-Chat-Last-Common-Read": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/ChatMessage" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"403": { |
|
"description": "Missing permissions to clear history", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/chat/{token}/{messageId}": { |
|
"delete": { |
|
"operationId": "chat-delete-message", |
|
"summary": "Delete a chat message", |
|
"tags": [ |
|
"chat" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "messageId", |
|
"in": "path", |
|
"description": "ID of the message", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Message deleted successfully", |
|
"headers": { |
|
"X-Chat-Last-Common-Read": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/ChatMessageWithParent" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"202": { |
|
"description": "Message deleted successfully, but Matterbridge is configured, so the information can be replicated elsewhere", |
|
"headers": { |
|
"X-Chat-Last-Common-Read": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/ChatMessageWithParent" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Deleting message is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"403": { |
|
"description": "Missing permissions to delete message", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Message not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"405": { |
|
"description": "Deleting message is not allowed", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/chat/{token}/{messageId}/context": { |
|
"get": { |
|
"operationId": "chat-get-message-context", |
|
"summary": "Get the context of a message", |
|
"tags": [ |
|
"chat" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "limit", |
|
"in": "query", |
|
"description": "Number of chat messages to receive in both directions (50 by default, 100 at most, might return 201 messages)", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 50 |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "messageId", |
|
"in": "path", |
|
"description": "The focused message which should be in the \"middle\" of the returned context", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Message context returned", |
|
"headers": { |
|
"X-Chat-Last-Common-Read": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
"X-Chat-Last-Given": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/ChatMessageWithParent" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"304": { |
|
"description": "No messages", |
|
"headers": { |
|
"X-Chat-Last-Common-Read": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
"X-Chat-Last-Given": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/ChatMessageWithParent" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/chat/{token}/{messageId}/reminder": { |
|
"post": { |
|
"operationId": "chat-set-reminder", |
|
"summary": "Set a reminder for a chat message", |
|
"tags": [ |
|
"chat" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "timestamp", |
|
"in": "query", |
|
"description": "Timestamp of the reminder", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "messageId", |
|
"in": "path", |
|
"description": "ID of the message", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"201": { |
|
"description": "Reminder created successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/ChatReminder" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Message not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"get": { |
|
"operationId": "chat-get-reminder", |
|
"summary": "Get the reminder for a chat message", |
|
"tags": [ |
|
"chat" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "messageId", |
|
"in": "path", |
|
"description": "ID of the message", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Reminder returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/ChatReminder" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Message not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "chat-delete-reminder", |
|
"summary": "Delete a chat reminder", |
|
"tags": [ |
|
"chat" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "messageId", |
|
"in": "path", |
|
"description": "ID of the message", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Reminder deleted successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Message not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/chat/{token}/read": { |
|
"post": { |
|
"operationId": "chat-set-read-marker", |
|
"summary": "Set the read marker to a specific message", |
|
"tags": [ |
|
"chat" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "lastReadMessage", |
|
"in": "query", |
|
"description": "ID if the last read message", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Read marker set successfully", |
|
"headers": { |
|
"X-Chat-Last-Common-Read": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "chat-mark-unread", |
|
"summary": "Mark a chat as unread", |
|
"tags": [ |
|
"chat" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Read marker set successfully", |
|
"headers": { |
|
"X-Chat-Last-Common-Read": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/chat/{token}/mentions": { |
|
"get": { |
|
"operationId": "chat-mentions", |
|
"summary": "Search for mentions", |
|
"tags": [ |
|
"chat" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "search", |
|
"in": "query", |
|
"description": "Text to search for", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "limit", |
|
"in": "query", |
|
"description": "Maximum number of results", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 20 |
|
} |
|
}, |
|
{ |
|
"name": "includeStatus", |
|
"in": "query", |
|
"description": "Include the user statuses", |
|
"schema": { |
|
"type": "integer", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "List of mention suggestions returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/ChatMentionSuggestion" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/chat/{token}/share": { |
|
"post": { |
|
"operationId": "chat-share-object-to-chat", |
|
"summary": "Sends a rich-object to the given room", |
|
"description": "The author and timestamp are automatically set to the current user/guest and time.", |
|
"tags": [ |
|
"chat" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "objectType", |
|
"in": "query", |
|
"description": "Type of the object", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "objectId", |
|
"in": "query", |
|
"description": "ID of the object", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "metaData", |
|
"in": "query", |
|
"description": "Additional metadata", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "actorDisplayName", |
|
"in": "query", |
|
"description": "Guest name", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "referenceId", |
|
"in": "query", |
|
"description": "Reference ID", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"201": { |
|
"description": "Object shared successfully", |
|
"headers": { |
|
"X-Chat-Last-Common-Read": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/ChatMessageWithParent", |
|
"nullable": true |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Sharing object is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Actor not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"413": { |
|
"description": "Message too long", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"get": { |
|
"operationId": "chat-get-objects-shared-in-room", |
|
"summary": "Get objects that are shared in the room", |
|
"tags": [ |
|
"chat" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "objectType", |
|
"in": "query", |
|
"description": "Type of the objects", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "lastKnownMessageId", |
|
"in": "query", |
|
"description": "ID of the last known message", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "limit", |
|
"in": "query", |
|
"description": "Maximum number of objects", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 100 |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "List of shared objects messages returned", |
|
"headers": { |
|
"X-Chat-Last-Given": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/ChatMessage" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/chat/{token}/share/overview": { |
|
"get": { |
|
"operationId": "chat-get-objects-shared-in-room-overview", |
|
"summary": "Get objects that are shared in the room overview", |
|
"tags": [ |
|
"chat" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "limit", |
|
"in": "query", |
|
"description": "Maximum number of objects", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 7 |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "List of shared objects messages of each type returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"additionalProperties": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/ChatMessage" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/federation/invitation/{id}": { |
|
"post": { |
|
"operationId": "federation-accept-share", |
|
"summary": "Accept a federation invites", |
|
"tags": [ |
|
"federation" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "id", |
|
"in": "path", |
|
"description": "ID of the share", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Invite accepted successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"500": { |
|
"description": "", |
|
"content": { |
|
"text/plain": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "federation-reject-share", |
|
"summary": "Decline a federation invites", |
|
"tags": [ |
|
"federation" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "id", |
|
"in": "path", |
|
"description": "ID of the share", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Invite declined successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"500": { |
|
"description": "", |
|
"content": { |
|
"text/plain": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/federation/invitation": { |
|
"get": { |
|
"operationId": "federation-get-shares", |
|
"summary": "Get a list of federation invites", |
|
"tags": [ |
|
"federation" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Get list of received federation invites successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/FederationInvite" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/file/{fileId}": { |
|
"get": { |
|
"operationId": "files_integration-get-room-by-file-id", |
|
"summary": "Get the token of the room associated to the given file id", |
|
"description": "This is the counterpart of self::getRoomByShareToken() for file ids instead of share tokens, although both return the same room token if the given file id and share token refer to the same file.\nIf there is no room associated to the given file id a new room is created; the new room is a public room associated with a \"file\" object with the given file id. Unlike normal rooms in which the owner is the user that created the room these are special rooms without owner (although self joined users with direct access to the file become persistent participants automatically when they join until they explicitly leave or no longer have access to the file).\nIn any case, to create or even get the token of the room, the file must be shared and the user must be the owner of a public share of the file (like a link share, for example) or have direct access to that file; an error is returned otherwise. A user has direct access to a file if she has access to it (or to an ancestor) through a user, group, circle or room share (but not through a link share, for example), or if she is the owner of such a file.", |
|
"tags": [ |
|
"files_integration" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "fileId", |
|
"in": "path", |
|
"description": "ID of the file", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^.+$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Room token returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"token" |
|
], |
|
"properties": { |
|
"token": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Rooms not allowed for shares", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Share not found", |
|
"content": { |
|
"text/plain": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/publicshare/{shareToken}": { |
|
"get": { |
|
"operationId": "files_integration-get-room-by-share-token", |
|
"summary": "Returns the token of the room associated to the file id of the given share token", |
|
"description": "This is the counterpart of self::getRoomByFileId() for share tokens instead of file ids, although both return the same room token if the given file id and share token refer to the same file.\nIf there is no room associated to the file id of the given share token a new room is created; the new room is a public room associated with a \"file\" object with the file id of the given share token. Unlike normal rooms in which the owner is the user that created the room these are special rooms without owner (although self joined users with direct access to the file become persistent participants automatically when they join until they explicitly leave or no longer have access to the file).\nIn any case, to create or even get the token of the room, the file must be publicly shared (like a link share, for example); an error is returned otherwise.\nBesides the token of the room this also returns the current user ID and display name, if any; this is needed by the Talk sidebar to know the actual current user, as the public share page uses the incognito mode and thus logged-in users as seen as guests.", |
|
"tags": [ |
|
"files_integration" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "shareToken", |
|
"in": "path", |
|
"description": "Token of the file share", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^.+$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Room token and user info returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"token", |
|
"userId", |
|
"userDisplayName" |
|
], |
|
"properties": { |
|
"token": { |
|
"type": "string" |
|
}, |
|
"userId": { |
|
"type": "string" |
|
}, |
|
"userDisplayName": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Rooms not allowed for shares", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Share not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/guest/{token}/name": { |
|
"post": { |
|
"operationId": "guest-set-display-name", |
|
"summary": "Set the display name as a guest", |
|
"tags": [ |
|
"guest" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "displayName", |
|
"in": "query", |
|
"description": "New display name", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Display name updated successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"403": { |
|
"description": "Not a guest", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Not a participant", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/hostedsignalingserver/requesttrial": { |
|
"post": { |
|
"operationId": "hosted_signaling_server-request-trial", |
|
"summary": "Request a trial account", |
|
"description": "This endpoint requires admin access", |
|
"tags": [ |
|
"hosted_signaling_server" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "url", |
|
"in": "query", |
|
"description": "Server URL", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "name", |
|
"in": "query", |
|
"description": "Display name of the user", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "email", |
|
"in": "query", |
|
"description": "Email of the user", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "language", |
|
"in": "query", |
|
"description": "Language of the user", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "country", |
|
"in": "query", |
|
"description": "Country of the user", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Trial requested successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"additionalProperties": { |
|
"type": "object" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Requesting trial is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"message" |
|
], |
|
"properties": { |
|
"message": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"500": { |
|
"description": "", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"message" |
|
], |
|
"properties": { |
|
"message": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/hostedsignalingserver/delete": { |
|
"delete": { |
|
"operationId": "hosted_signaling_server-delete-account", |
|
"summary": "Delete the account", |
|
"description": "This endpoint requires admin access", |
|
"tags": [ |
|
"hosted_signaling_server" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"204": { |
|
"description": "Account deleted successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Deleting account is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"message" |
|
], |
|
"properties": { |
|
"message": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"500": { |
|
"description": "", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"message" |
|
], |
|
"properties": { |
|
"message": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/bridge/{token}": { |
|
"get": { |
|
"operationId": "matterbridge-get-bridge-of-room", |
|
"summary": "Get bridge information of one room", |
|
"tags": [ |
|
"matterbridge" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Return list of configured bridges", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/MatterbridgeWithProcessState" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"put": { |
|
"operationId": "matterbridge-edit-bridge-of-room", |
|
"summary": "Edit bridge information of one room", |
|
"tags": [ |
|
"matterbridge" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "enabled", |
|
"in": "query", |
|
"description": "If the bridge should be enabled", |
|
"required": true, |
|
"schema": { |
|
"type": "integer" |
|
} |
|
}, |
|
{ |
|
"name": "parts", |
|
"in": "query", |
|
"description": "New parts", |
|
"schema": { |
|
"type": "string", |
|
"contentMediaType": "application/json", |
|
"contentSchema": { |
|
"$ref": "#/components/schemas/MatterbridgeConfigFields", |
|
"default": [], |
|
"description": "New parts" |
|
} |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Bridge edited successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/MatterbridgeProcessState" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"406": { |
|
"description": "Editing bridge is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "matterbridge-delete-bridge-of-room", |
|
"summary": "Delete bridge of one room", |
|
"tags": [ |
|
"matterbridge" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Bridge deleted successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "boolean" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"406": { |
|
"description": "Deleting bridge is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/bridge/{token}/process": { |
|
"get": { |
|
"operationId": "matterbridge-get-bridge-process-state", |
|
"summary": "Get bridge process information", |
|
"tags": [ |
|
"matterbridge" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Return list of running processes", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/MatterbridgeProcessState" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/bridge": { |
|
"delete": { |
|
"operationId": "matterbridge_settings-stop-all-bridges", |
|
"summary": "Stop all bridges", |
|
"description": "This endpoint requires admin access", |
|
"tags": [ |
|
"matterbridge_settings" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "All bridges stopped successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "boolean" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"406": { |
|
"description": "Stopping all bridges is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/bridge/version": { |
|
"get": { |
|
"operationId": "matterbridge_settings-get-matterbridge-version", |
|
"summary": "Get Matterbridge version", |
|
"description": "This endpoint requires admin access", |
|
"tags": [ |
|
"matterbridge_settings" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Bridge version returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"version" |
|
], |
|
"properties": { |
|
"version": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Getting bridge version is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/poll/{token}": { |
|
"post": { |
|
"operationId": "poll-create-poll", |
|
"summary": "Create a poll", |
|
"tags": [ |
|
"poll" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "question", |
|
"in": "query", |
|
"description": "Question of the poll", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "options[]", |
|
"in": "query", |
|
"description": "Options of the poll", |
|
"required": true, |
|
"schema": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
{ |
|
"name": "resultMode", |
|
"in": "query", |
|
"description": "Mode how the results will be shown", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "maxVotes", |
|
"in": "query", |
|
"description": "Number of maximum votes per voter", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"201": { |
|
"description": "Poll created successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Poll" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Creating poll is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/poll/{token}/{pollId}": { |
|
"get": { |
|
"operationId": "poll-show-poll", |
|
"summary": "Get a poll", |
|
"tags": [ |
|
"poll" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "pollId", |
|
"in": "path", |
|
"description": "ID of the poll", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Poll returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Poll" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Poll not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"post": { |
|
"operationId": "poll-vote-poll", |
|
"summary": "Vote on a poll", |
|
"tags": [ |
|
"poll" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "optionIds[]", |
|
"in": "query", |
|
"description": "IDs of the selected options", |
|
"schema": { |
|
"type": "array", |
|
"default": [], |
|
"items": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "pollId", |
|
"in": "path", |
|
"description": "ID of the poll", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Voted successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Poll" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Voting is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Poll not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "poll-close-poll", |
|
"summary": "Close a poll", |
|
"tags": [ |
|
"poll" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "pollId", |
|
"in": "path", |
|
"description": "ID of the poll", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Poll closed successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Poll" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Poll already closed", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"403": { |
|
"description": "Missing permissions to close poll", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Poll not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"500": { |
|
"description": "", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/publicshareauth": { |
|
"post": { |
|
"operationId": "public_share_auth-create-room", |
|
"summary": "Creates a new room for requesting the password of a share", |
|
"description": "The new room is a public room associated with a \"share:password\" object with the ID of the share token. Unlike normal rooms in which the owner is the user that created the room these are special rooms always created by a guest or user on behalf of a registered user, the sharer, who will be the owner of the room.\nThe share must have \"send password by Talk\" enabled; an error is returned otherwise.", |
|
"tags": [ |
|
"public_share_auth" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "shareToken", |
|
"in": "query", |
|
"description": "Token of the file share", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"201": { |
|
"description": "Room created successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"token", |
|
"name", |
|
"displayName" |
|
], |
|
"properties": { |
|
"token": { |
|
"type": "string" |
|
}, |
|
"name": { |
|
"type": "string" |
|
}, |
|
"displayName": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Share not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/reaction/{token}/{messageId}": { |
|
"post": { |
|
"operationId": "reaction-react", |
|
"summary": "Add a reaction to a message", |
|
"tags": [ |
|
"reaction" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "reaction", |
|
"in": "query", |
|
"description": "Emoji to add", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "messageId", |
|
"in": "path", |
|
"description": "ID of the message", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Reaction already existed", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"additionalProperties": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Reaction" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"201": { |
|
"description": "Reaction added successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"additionalProperties": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Reaction" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Adding reaction is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Message not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "reaction-delete", |
|
"summary": "Delete a reaction from a message", |
|
"tags": [ |
|
"reaction" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "reaction", |
|
"in": "query", |
|
"description": "Emoji to remove", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "messageId", |
|
"in": "path", |
|
"description": "ID of the message", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Reaction deleted successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"additionalProperties": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Reaction" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Deleting reaction is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Message not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"get": { |
|
"operationId": "reaction-get-reactions", |
|
"summary": "Get a list of reactions for a message", |
|
"tags": [ |
|
"reaction" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "reaction", |
|
"in": "query", |
|
"description": "Emoji to filter", |
|
"schema": { |
|
"type": "string", |
|
"nullable": true |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "messageId", |
|
"in": "path", |
|
"description": "ID of the message", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Reactions returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"additionalProperties": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Reaction" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Message or reaction not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/recording/welcome/{serverId}": { |
|
"get": { |
|
"operationId": "recording-get-welcome-message", |
|
"summary": "Get the welcome message of a recording server", |
|
"description": "This endpoint requires admin access", |
|
"tags": [ |
|
"recording" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "serverId", |
|
"in": "path", |
|
"description": "ID of the server", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Welcome message returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"version" |
|
], |
|
"properties": { |
|
"version": { |
|
"type": "number", |
|
"format": "float" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Recording server not found or not configured", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"500": { |
|
"description": "", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/recording/{token}": { |
|
"post": { |
|
"operationId": "recording-start", |
|
"summary": "Start the recording", |
|
"tags": [ |
|
"recording" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "status", |
|
"in": "query", |
|
"description": "Type of the recording", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Recording started successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Starting recording is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "recording-stop", |
|
"summary": "Stop the recording", |
|
"tags": [ |
|
"recording" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Recording stopped successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Stopping recording is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/recording/{token}/store": { |
|
"post": { |
|
"operationId": "recording-store", |
|
"summary": "Store the recording", |
|
"tags": [ |
|
"recording" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "owner", |
|
"in": "query", |
|
"description": "User that will own the recording file", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Recording stored successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Storing recording is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"401": { |
|
"description": "Missing permissions to store recording", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"type", |
|
"error" |
|
], |
|
"properties": { |
|
"type": { |
|
"type": "string" |
|
}, |
|
"error": { |
|
"type": "object", |
|
"required": [ |
|
"code", |
|
"message" |
|
], |
|
"properties": { |
|
"code": { |
|
"type": "string" |
|
}, |
|
"message": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/recording/{token}/notification": { |
|
"delete": { |
|
"operationId": "recording-notification-dismiss", |
|
"summary": "Dismiss the store call recording notification", |
|
"tags": [ |
|
"recording" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "timestamp", |
|
"in": "query", |
|
"description": "Timestamp of the notification to be dismissed", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Notification dismissed successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Dismissing notification is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/recording/{token}/share-chat": { |
|
"post": { |
|
"operationId": "recording-share-to-chat", |
|
"summary": "Share the recorded file to the chat", |
|
"tags": [ |
|
"recording" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "fileId", |
|
"in": "query", |
|
"description": "ID of the file", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "timestamp", |
|
"in": "query", |
|
"description": "Timestamp of the notification to be dismissed", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Recording shared to chat successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Sharing recording to chat is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room": { |
|
"get": { |
|
"operationId": "room-get-rooms", |
|
"summary": "Get all currently existent rooms which the user has joined", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "noStatusUpdate", |
|
"in": "query", |
|
"description": "When the user status should not be automatically set to online set to 1 (default 0)", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "includeStatus", |
|
"in": "query", |
|
"description": "Include the user status", |
|
"schema": { |
|
"type": "integer", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "modifiedSince", |
|
"in": "query", |
|
"description": "Filter rooms modified after a timestamp", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Return list of rooms", |
|
"headers": { |
|
"X-Nextcloud-Talk-Hash": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
"X-Nextcloud-Talk-Modified-Before": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"post": { |
|
"operationId": "room-create-room", |
|
"summary": "Create a room with a user, a group or a circle", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "roomType", |
|
"in": "query", |
|
"description": "Type of the room", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "invite", |
|
"in": "query", |
|
"description": "User, group, \u2026 ID to invite", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "roomName", |
|
"in": "query", |
|
"description": "Name of the room", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "source", |
|
"in": "query", |
|
"description": "Source of the invite ID ('circles' to create a room with a circle, etc.)", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "objectType", |
|
"in": "query", |
|
"description": "Type of the object", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "objectId", |
|
"in": "query", |
|
"description": "ID of the object", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Room already existed", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"201": { |
|
"description": "Room created successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Room type invalid", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"403": { |
|
"description": "Missing permissions to create room", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "User, group or other target to invite was not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/listed-room": { |
|
"get": { |
|
"operationId": "room-get-listed-rooms", |
|
"summary": "Get listed rooms with optional search term", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "searchTerm", |
|
"in": "query", |
|
"description": "search term", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Return list of matching rooms", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/note-to-self": { |
|
"get": { |
|
"operationId": "room-get-note-to-self-conversation", |
|
"summary": "Get the \"Note to self\" conversation for the user", |
|
"description": "It will be automatically created when it is currently missing", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Room returned successfully", |
|
"headers": { |
|
"X-Nextcloud-Talk-Hash": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}": { |
|
"get": { |
|
"operationId": "room-get-single-room", |
|
"summary": "Get a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"description": "Token of the room", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Room returned", |
|
"headers": { |
|
"X-Nextcloud-Talk-Hash": { |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"401": { |
|
"description": "SIP request invalid", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"nullable": true |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Room not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"nullable": true |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"put": { |
|
"operationId": "room-rename-room", |
|
"summary": "Rename a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "roomName", |
|
"in": "query", |
|
"description": "New name", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Room renamed successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Renaming room is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "room-delete-room", |
|
"summary": "Delete a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Room successfully deleted", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Deleting room is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/breakout-rooms": { |
|
"get": { |
|
"operationId": "room-get-breakout-rooms", |
|
"summary": "Get all (for moderators and in case of \"free selection\") or the assigned breakout room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Breakout rooms returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Getting breakout rooms is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/public": { |
|
"post": { |
|
"operationId": "room-make-public", |
|
"summary": "Allowed guests to join conversation", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Allowed guests successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Allowing guests is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "room-make-private", |
|
"summary": "Disallowed guests to join conversation", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Room unpublished Disallowing guests successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Disallowing guests is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/description": { |
|
"put": { |
|
"operationId": "room-set-description", |
|
"summary": "Update the description of a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "description", |
|
"in": "query", |
|
"description": "New description", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Description updated successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Updating description is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/read-only": { |
|
"put": { |
|
"operationId": "room-set-read-only", |
|
"summary": "Set read-only state of a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "state", |
|
"in": "query", |
|
"description": "New read-only state", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Read-only state updated successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Updating read-only state is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/listable": { |
|
"put": { |
|
"operationId": "room-set-listable", |
|
"summary": "Make a room listable", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "scope", |
|
"in": "query", |
|
"description": "Scope where the room is listable", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Made room listable successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Making room listable is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/password": { |
|
"put": { |
|
"operationId": "room-set-password", |
|
"summary": "Set a password for a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "password", |
|
"in": "query", |
|
"description": "New password", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Password set successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"403": { |
|
"description": "Setting password is not allowed", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Setting password is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"properties": { |
|
"message": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/permissions/{mode}": { |
|
"put": { |
|
"operationId": "room-set-permissions", |
|
"summary": "Update the permissions of a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "permissions", |
|
"in": "query", |
|
"description": "New permissions", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "mode", |
|
"in": "path", |
|
"description": "Level of the permissions ('call', 'default')", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^(call|default)$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Permissions updated successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Updating permissions is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/participants": { |
|
"get": { |
|
"operationId": "room-get-participants", |
|
"summary": "Get a list of participants for a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "includeStatus", |
|
"in": "query", |
|
"description": "Include the user statuses", |
|
"schema": { |
|
"type": "integer", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Participants returned", |
|
"headers": { |
|
"X-Nextcloud-Has-User-Statuses": { |
|
"schema": { |
|
"type": "boolean" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Participant" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"403": { |
|
"description": "Missing permissions for getting participants", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"post": { |
|
"operationId": "room-add-participant-to-room", |
|
"summary": "Add a participant to a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "newParticipant", |
|
"in": "query", |
|
"description": "New participant", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "source", |
|
"in": "query", |
|
"description": "Source of the participant", |
|
"schema": { |
|
"type": "string", |
|
"default": "users" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Participant successfully added", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"oneOf": [ |
|
{ |
|
"type": "object", |
|
"required": [ |
|
"type" |
|
], |
|
"properties": { |
|
"type": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
} |
|
}, |
|
{ |
|
"type": "array", |
|
"maxLength": 0 |
|
} |
|
] |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "User, group or other target to invite was not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"501": { |
|
"description": "SIP dial-out is not configured", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Adding participant is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/breakout-rooms/participants": { |
|
"get": { |
|
"operationId": "room-get-breakout-room-participants", |
|
"summary": "Get the breakout room participants for a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "includeStatus", |
|
"in": "query", |
|
"description": "Include the user statuses", |
|
"schema": { |
|
"type": "integer", |
|
"default": 0 |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Breakout room participants returned", |
|
"headers": { |
|
"X-Nextcloud-Has-User-Statuses": { |
|
"schema": { |
|
"type": "boolean" |
|
} |
|
} |
|
}, |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/Participant" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Getting breakout room participants is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"403": { |
|
"description": "Missing permissions to get breakout room participants", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/participants/self": { |
|
"delete": { |
|
"operationId": "room-remove-self-from-room", |
|
"summary": "Remove the current user from a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Participant removed successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Removing participant is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Participant not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/attendees": { |
|
"delete": { |
|
"operationId": "room-remove-attendee-from-room", |
|
"summary": "Remove an attendee from a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "attendeeId", |
|
"in": "query", |
|
"description": "ID of the attendee", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Attendee removed successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Removing attendee is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"403": { |
|
"description": "Removing attendee is not allowed", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Attendee not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/attendees/permissions": { |
|
"put": { |
|
"operationId": "room-set-attendee-permissions", |
|
"summary": "Update the permissions of an attendee", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "attendeeId", |
|
"in": "query", |
|
"description": "ID of the attendee", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "method", |
|
"in": "query", |
|
"description": "Method of updating permissions ('set', 'remove', 'add')", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "permissions", |
|
"in": "query", |
|
"description": "New permissions", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Permissions updated successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Updating permissions is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"403": { |
|
"description": "Missing permissions to update permissions", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Attendee not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/attendees/permissions/all": { |
|
"put": { |
|
"operationId": "room-set-all-attendees-permissions", |
|
"summary": "Update the permissions of all attendees", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "method", |
|
"in": "query", |
|
"description": "Method of updating permissions ('set', 'remove', 'add')", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "permissions", |
|
"in": "query", |
|
"description": "New permissions", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Permissions updated successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Updating permissions is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/participants/active": { |
|
"post": { |
|
"operationId": "room-join-room", |
|
"summary": "Join a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "password", |
|
"in": "query", |
|
"description": "Password of the room", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "force", |
|
"in": "query", |
|
"description": "Create a new session if necessary", |
|
"schema": { |
|
"type": "integer", |
|
"default": 1 |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"description": "Token of the room", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Room joined successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"403": { |
|
"description": "Joining room is not allowed", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Room not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"409": { |
|
"description": "Session already exists", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"sessionId", |
|
"inCall", |
|
"lastPing" |
|
], |
|
"properties": { |
|
"sessionId": { |
|
"type": "string" |
|
}, |
|
"inCall": { |
|
"type": "integer", |
|
"format": "int64" |
|
}, |
|
"lastPing": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "room-leave-room", |
|
"summary": "Leave a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"description": "Token of the room", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Successfully left the room", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/participants/resend-invitations": { |
|
"post": { |
|
"operationId": "room-resend-invitations", |
|
"summary": "Resend invitations", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "attendeeId", |
|
"in": "query", |
|
"description": "ID of the attendee", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"nullable": true |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Invitation resent successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Attendee not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/participants/state": { |
|
"put": { |
|
"operationId": "room-set-session-state", |
|
"summary": "Set active state for a session", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "state", |
|
"in": "query", |
|
"description": "of the room", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Session state set successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "The provided new state was invalid", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/moderators": { |
|
"post": { |
|
"operationId": "room-promote-moderator", |
|
"summary": "Promote an attendee to moderator", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "attendeeId", |
|
"in": "query", |
|
"description": "ID of the attendee", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Attendee promoted to moderator successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Promoting attendee to moderator is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"403": { |
|
"description": "Promoting attendee to moderator is not allowed", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Attendee not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "room-demote-moderator", |
|
"summary": "Demote an attendee from moderator", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "attendeeId", |
|
"in": "query", |
|
"description": "ID of the attendee", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Attendee demoted from moderator successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Demoting attendee from moderator is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"403": { |
|
"description": "Demoting attendee from moderator is not allowed", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Attendee not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/favorite": { |
|
"post": { |
|
"operationId": "room-add-to-favorites", |
|
"summary": "Add a room to the favorites", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Successfully added room to favorites", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "room-remove-from-favorites", |
|
"summary": "Remove a room from the favorites", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Successfully removed room from favorites", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/notify": { |
|
"post": { |
|
"operationId": "room-set-notification-level", |
|
"summary": "Update the notification level for a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "level", |
|
"in": "query", |
|
"description": "New level", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Notification level updated successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Updating notification level is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/notify-calls": { |
|
"post": { |
|
"operationId": "room-set-notification-calls", |
|
"summary": "Update call notifications", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "level", |
|
"in": "query", |
|
"description": "New level", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Call notification level updated successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Updating call notification level is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/webinar/lobby": { |
|
"put": { |
|
"operationId": "room-set-lobby", |
|
"summary": "Update the lobby state for a room", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "state", |
|
"in": "query", |
|
"description": "New state", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "timer", |
|
"in": "query", |
|
"description": "Timer when the lobby will be removed", |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64", |
|
"nullable": true |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Lobby state updated successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Updating lobby state is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/webinar/sip": { |
|
"put": { |
|
"operationId": "room-setsip-enabled", |
|
"summary": "Update SIP enabled state", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "state", |
|
"in": "query", |
|
"description": "New state", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "SIP enabled state updated successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Updating SIP enabled state is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"401": { |
|
"description": "User not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"403": { |
|
"description": "Missing permissions to update SIP enabled state", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"412": { |
|
"description": "SIP not configured", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/recording-consent": { |
|
"put": { |
|
"operationId": "room-set-recording-consent", |
|
"summary": "Set recording consent requirement for this conversation", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "recordingConsent", |
|
"in": "query", |
|
"description": "New consent setting for the conversation (Only {@see RecordingService::CONSENT_REQUIRED_NO} and {@see RecordingService::CONSENT_REQUIRED_YES} are allowed here.)", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Recording consent requirement set successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/Room" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Setting recording consent requirement is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"412": { |
|
"description": "No recording server is configured", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/room/{token}/message-expiration": { |
|
"post": { |
|
"operationId": "room-set-message-expiration", |
|
"summary": "Update message expiration time", |
|
"tags": [ |
|
"room" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "seconds", |
|
"in": "query", |
|
"description": "New time", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v4" |
|
], |
|
"default": "v4" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Message expiration time updated successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Updating message expiration time is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/settings/sip": { |
|
"post": { |
|
"operationId": "settings-setsip-settings", |
|
"summary": "Update SIP settings", |
|
"description": "This endpoint requires admin access", |
|
"tags": [ |
|
"settings" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "sipGroups[]", |
|
"in": "query", |
|
"description": "New SIP groups", |
|
"schema": { |
|
"type": "array", |
|
"default": [], |
|
"items": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
{ |
|
"name": "dialInInfo", |
|
"in": "query", |
|
"description": "New dial info", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "sharedSecret", |
|
"in": "query", |
|
"description": "New shared secret", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Successfully set new SIP settings", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/settings/user": { |
|
"post": { |
|
"operationId": "settings-set-user-setting", |
|
"summary": "Update user setting", |
|
"tags": [ |
|
"settings" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "key", |
|
"in": "query", |
|
"description": "Key to update", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "value", |
|
"in": "query", |
|
"description": "New value for the key", |
|
"schema": { |
|
"type": "string", |
|
"nullable": true, |
|
"contentMediaType": "application/json", |
|
"contentSchema": { |
|
"nullable": true, |
|
"description": "New value for the key", |
|
"oneOf": [ |
|
{ |
|
"type": "string" |
|
}, |
|
{ |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
] |
|
} |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v1" |
|
], |
|
"default": "v1" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "User setting updated successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Updating user setting is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/signaling/settings": { |
|
"get": { |
|
"operationId": "signaling-get-settings", |
|
"summary": "Get the signaling settings", |
|
"tags": [ |
|
"signaling" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "token", |
|
"in": "query", |
|
"description": "Token of the room", |
|
"schema": { |
|
"type": "string", |
|
"default": "" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v3" |
|
], |
|
"default": "v3" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Signaling settings returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/SignalingSettings" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"401": { |
|
"description": "Recording request invalid", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Room not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/signaling/welcome/{serverId}": { |
|
"get": { |
|
"operationId": "signaling-get-welcome-message", |
|
"summary": "Get the welcome message from a signaling server", |
|
"description": "Only available for logged-in users because guests can not use the apps right now.\nThis endpoint requires admin access", |
|
"tags": [ |
|
"signaling" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v3" |
|
], |
|
"default": "v3" |
|
} |
|
}, |
|
{ |
|
"name": "serverId", |
|
"in": "path", |
|
"description": "ID of the signaling server", |
|
"required": true, |
|
"schema": { |
|
"type": "integer", |
|
"format": "int64" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Welcome message returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"additionalProperties": { |
|
"type": "object" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Signaling server not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"500": { |
|
"description": "", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"error" |
|
], |
|
"properties": { |
|
"error": { |
|
"type": "string" |
|
}, |
|
"version": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/api/{apiVersion}/signaling/{token}": { |
|
"post": { |
|
"operationId": "signaling-send-messages", |
|
"summary": "Send signaling messages", |
|
"tags": [ |
|
"signaling" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "messages", |
|
"in": "query", |
|
"description": "JSON encoded messages", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
}, |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v3" |
|
], |
|
"default": "v3" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"description": "Token of the room", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Signaling message sent successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Sending signaling message is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"get": { |
|
"operationId": "signaling-pull-messages", |
|
"summary": "Get signaling messages", |
|
"tags": [ |
|
"signaling" |
|
], |
|
"security": [ |
|
{}, |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "apiVersion", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"enum": [ |
|
"v3" |
|
], |
|
"default": "v3" |
|
} |
|
}, |
|
{ |
|
"name": "token", |
|
"in": "path", |
|
"description": "Token of the room", |
|
"required": true, |
|
"schema": { |
|
"type": "string", |
|
"pattern": "^[a-z0-9]{4,30}$" |
|
} |
|
}, |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Signaling messages returned", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"type": "object", |
|
"required": [ |
|
"type", |
|
"data" |
|
], |
|
"properties": { |
|
"type": { |
|
"type": "string" |
|
}, |
|
"data": { |
|
"oneOf": [ |
|
{ |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/SignalingSession" |
|
} |
|
}, |
|
{ |
|
"type": "string" |
|
} |
|
] |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"404": { |
|
"description": "Session, room or participant not found", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"type": "object", |
|
"required": [ |
|
"type", |
|
"data" |
|
], |
|
"properties": { |
|
"type": { |
|
"type": "string" |
|
}, |
|
"data": { |
|
"oneOf": [ |
|
{ |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/SignalingSession" |
|
} |
|
}, |
|
{ |
|
"type": "string" |
|
} |
|
] |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"409": { |
|
"description": "Session killed", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array", |
|
"items": { |
|
"type": "object", |
|
"required": [ |
|
"type", |
|
"data" |
|
], |
|
"properties": { |
|
"type": { |
|
"type": "string" |
|
}, |
|
"data": { |
|
"oneOf": [ |
|
{ |
|
"type": "array", |
|
"items": { |
|
"$ref": "#/components/schemas/SignalingSession" |
|
} |
|
}, |
|
{ |
|
"type": "string" |
|
} |
|
] |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Getting signaling messages is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/apps/spreed/temp-user-avatar": { |
|
"post": { |
|
"operationId": "temp_avatar-post-avatar", |
|
"summary": "Upload a temporary avatar", |
|
"tags": [ |
|
"temp_avatar" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Avatar uploaded successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Uploading avatar is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "object", |
|
"required": [ |
|
"message" |
|
], |
|
"properties": { |
|
"message": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"delete": { |
|
"operationId": "temp_avatar-delete-avatar", |
|
"summary": "Delete a temporary avatar", |
|
"tags": [ |
|
"temp_avatar" |
|
], |
|
"security": [ |
|
{ |
|
"bearer_auth": [] |
|
}, |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"parameters": [ |
|
{ |
|
"name": "OCS-APIRequest", |
|
"in": "header", |
|
"description": "Required to be true for the API request to pass", |
|
"required": true, |
|
"schema": { |
|
"type": "boolean", |
|
"default": true |
|
} |
|
} |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "Avatar deleted successfully", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"400": { |
|
"description": "Deleting avatar is not possible", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": {} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"tags": [] |
|
}
|
|
|