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.
		
		
		
		
		
			
		
			
				
					
					
						
							460 lines
						
					
					
						
							22 KiB
						
					
					
				
			
		
		
		
			
			
			
		
		
	
	
							460 lines
						
					
					
						
							22 KiB
						
					
					
				
								{
							 | 
						|
								    "openapi": "3.0.3",
							 | 
						|
								    "info": {
							 | 
						|
								        "title": "spreed-backend-signaling",
							 | 
						|
								        "version": "0.0.1",
							 | 
						|
								        "description": "Chat, video & audio-conferencing using WebRTC",
							 | 
						|
								        "license": {
							 | 
						|
								            "name": "agpl"
							 | 
						|
								        }
							 | 
						|
								    },
							 | 
						|
								    "components": {
							 | 
						|
								        "securitySchemes": {
							 | 
						|
								            "basic_auth": {
							 | 
						|
								                "type": "http",
							 | 
						|
								                "scheme": "basic"
							 | 
						|
								            },
							 | 
						|
								            "bearer_auth": {
							 | 
						|
								                "type": "http",
							 | 
						|
								                "scheme": "bearer"
							 | 
						|
								            }
							 | 
						|
								        },
							 | 
						|
								        "schemas": {
							 | 
						|
								            "Capabilities": {
							 | 
						|
								                "type": "object",
							 | 
						|
								                "required": [
							 | 
						|
								                    "features",
							 | 
						|
								                    "features-local",
							 | 
						|
								                    "config",
							 | 
						|
								                    "config-local",
							 | 
						|
								                    "version"
							 | 
						|
								                ],
							 | 
						|
								                "properties": {
							 | 
						|
								                    "features": {
							 | 
						|
								                        "type": "array",
							 | 
						|
								                        "items": {
							 | 
						|
								                            "type": "string"
							 | 
						|
								                        }
							 | 
						|
								                    },
							 | 
						|
								                    "features-local": {
							 | 
						|
								                        "type": "array",
							 | 
						|
								                        "items": {
							 | 
						|
								                            "type": "string"
							 | 
						|
								                        }
							 | 
						|
								                    },
							 | 
						|
								                    "config": {
							 | 
						|
								                        "type": "object",
							 | 
						|
								                        "required": [
							 | 
						|
								                            "attachments",
							 | 
						|
								                            "call",
							 | 
						|
								                            "chat",
							 | 
						|
								                            "conversations",
							 | 
						|
								                            "federation",
							 | 
						|
								                            "previews",
							 | 
						|
								                            "signaling"
							 | 
						|
								                        ],
							 | 
						|
								                        "properties": {
							 | 
						|
								                            "attachments": {
							 | 
						|
								                                "type": "object",
							 | 
						|
								                                "required": [
							 | 
						|
								                                    "allowed"
							 | 
						|
								                                ],
							 | 
						|
								                                "properties": {
							 | 
						|
								                                    "allowed": {
							 | 
						|
								                                        "type": "boolean"
							 | 
						|
								                                    },
							 | 
						|
								                                    "folder": {
							 | 
						|
								                                        "type": "string"
							 | 
						|
								                                    }
							 | 
						|
								                                }
							 | 
						|
								                            },
							 | 
						|
								                            "call": {
							 | 
						|
								                                "type": "object",
							 | 
						|
								                                "required": [
							 | 
						|
								                                    "enabled",
							 | 
						|
								                                    "breakout-rooms",
							 | 
						|
								                                    "recording",
							 | 
						|
								                                    "recording-consent",
							 | 
						|
								                                    "supported-reactions",
							 | 
						|
								                                    "predefined-backgrounds",
							 | 
						|
								                                    "can-upload-background",
							 | 
						|
								                                    "sip-enabled",
							 | 
						|
								                                    "sip-dialout-enabled",
							 | 
						|
								                                    "can-enable-sip",
							 | 
						|
								                                    "start-without-media",
							 | 
						|
								                                    "max-duration",
							 | 
						|
								                                    "blur-virtual-background",
							 | 
						|
								                                    "end-to-end-encryption"
							 | 
						|
								                                ],
							 | 
						|
								                                "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"
							 | 
						|
								                                    },
							 | 
						|
								                                    "start-without-media": {
							 | 
						|
								                                        "type": "boolean"
							 | 
						|
								                                    },
							 | 
						|
								                                    "max-duration": {
							 | 
						|
								                                        "type": "integer",
							 | 
						|
								                                        "format": "int64"
							 | 
						|
								                                    },
							 | 
						|
								                                    "blur-virtual-background": {
							 | 
						|
								                                        "type": "boolean"
							 | 
						|
								                                    },
							 | 
						|
								                                    "end-to-end-encryption": {
							 | 
						|
								                                        "type": "boolean"
							 | 
						|
								                                    }
							 | 
						|
								                                }
							 | 
						|
								                            },
							 | 
						|
								                            "chat": {
							 | 
						|
								                                "type": "object",
							 | 
						|
								                                "required": [
							 | 
						|
								                                    "max-length",
							 | 
						|
								                                    "read-privacy",
							 | 
						|
								                                    "has-translation-providers",
							 | 
						|
								                                    "has-translation-task-providers",
							 | 
						|
								                                    "typing-privacy",
							 | 
						|
								                                    "summary-threshold"
							 | 
						|
								                                ],
							 | 
						|
								                                "properties": {
							 | 
						|
								                                    "max-length": {
							 | 
						|
								                                        "type": "integer",
							 | 
						|
								                                        "format": "int64"
							 | 
						|
								                                    },
							 | 
						|
								                                    "read-privacy": {
							 | 
						|
								                                        "type": "integer",
							 | 
						|
								                                        "format": "int64"
							 | 
						|
								                                    },
							 | 
						|
								                                    "has-translation-providers": {
							 | 
						|
								                                        "type": "boolean"
							 | 
						|
								                                    },
							 | 
						|
								                                    "has-translation-task-providers": {
							 | 
						|
								                                        "type": "boolean"
							 | 
						|
								                                    },
							 | 
						|
								                                    "typing-privacy": {
							 | 
						|
								                                        "type": "integer",
							 | 
						|
								                                        "format": "int64"
							 | 
						|
								                                    },
							 | 
						|
								                                    "summary-threshold": {
							 | 
						|
								                                        "type": "integer",
							 | 
						|
								                                        "format": "int64",
							 | 
						|
								                                        "minimum": 1
							 | 
						|
								                                    }
							 | 
						|
								                                }
							 | 
						|
								                            },
							 | 
						|
								                            "conversations": {
							 | 
						|
								                                "type": "object",
							 | 
						|
								                                "required": [
							 | 
						|
								                                    "can-create",
							 | 
						|
								                                    "force-passwords",
							 | 
						|
								                                    "list-style",
							 | 
						|
								                                    "description-length"
							 | 
						|
								                                ],
							 | 
						|
								                                "properties": {
							 | 
						|
								                                    "can-create": {
							 | 
						|
								                                        "type": "boolean"
							 | 
						|
								                                    },
							 | 
						|
								                                    "force-passwords": {
							 | 
						|
								                                        "type": "boolean"
							 | 
						|
								                                    },
							 | 
						|
								                                    "list-style": {
							 | 
						|
								                                        "type": "string",
							 | 
						|
								                                        "enum": [
							 | 
						|
								                                            "two-lines",
							 | 
						|
								                                            "compact"
							 | 
						|
								                                        ]
							 | 
						|
								                                    },
							 | 
						|
								                                    "description-length": {
							 | 
						|
								                                        "type": "integer",
							 | 
						|
								                                        "format": "int64",
							 | 
						|
								                                        "minimum": 1
							 | 
						|
								                                    }
							 | 
						|
								                                }
							 | 
						|
								                            },
							 | 
						|
								                            "federation": {
							 | 
						|
								                                "type": "object",
							 | 
						|
								                                "required": [
							 | 
						|
								                                    "enabled",
							 | 
						|
								                                    "incoming-enabled",
							 | 
						|
								                                    "outgoing-enabled",
							 | 
						|
								                                    "only-trusted-servers"
							 | 
						|
								                                ],
							 | 
						|
								                                "properties": {
							 | 
						|
								                                    "enabled": {
							 | 
						|
								                                        "type": "boolean"
							 | 
						|
								                                    },
							 | 
						|
								                                    "incoming-enabled": {
							 | 
						|
								                                        "type": "boolean"
							 | 
						|
								                                    },
							 | 
						|
								                                    "outgoing-enabled": {
							 | 
						|
								                                        "type": "boolean"
							 | 
						|
								                                    },
							 | 
						|
								                                    "only-trusted-servers": {
							 | 
						|
								                                        "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"
							 | 
						|
								                                    }
							 | 
						|
								                                }
							 | 
						|
								                            }
							 | 
						|
								                        }
							 | 
						|
								                    },
							 | 
						|
								                    "config-local": {
							 | 
						|
								                        "type": "object",
							 | 
						|
								                        "additionalProperties": {
							 | 
						|
								                            "type": "array",
							 | 
						|
								                            "items": {
							 | 
						|
								                                "type": "string"
							 | 
						|
								                            }
							 | 
						|
								                        }
							 | 
						|
								                    },
							 | 
						|
								                    "version": {
							 | 
						|
								                        "type": "string"
							 | 
						|
								                    }
							 | 
						|
								                }
							 | 
						|
								            },
							 | 
						|
								            "OCSMeta": {
							 | 
						|
								                "type": "object",
							 | 
						|
								                "required": [
							 | 
						|
								                    "status",
							 | 
						|
								                    "statuscode"
							 | 
						|
								                ],
							 | 
						|
								                "properties": {
							 | 
						|
								                    "status": {
							 | 
						|
								                        "type": "string"
							 | 
						|
								                    },
							 | 
						|
								                    "statuscode": {
							 | 
						|
								                        "type": "integer"
							 | 
						|
								                    },
							 | 
						|
								                    "message": {
							 | 
						|
								                        "type": "string"
							 | 
						|
								                    },
							 | 
						|
								                    "totalitems": {
							 | 
						|
								                        "type": "string"
							 | 
						|
								                    },
							 | 
						|
								                    "itemsperpage": {
							 | 
						|
								                        "type": "string"
							 | 
						|
								                    }
							 | 
						|
								                }
							 | 
						|
								            },
							 | 
						|
								            "PublicCapabilities": {
							 | 
						|
								                "type": "object",
							 | 
						|
								                "properties": {
							 | 
						|
								                    "spreed": {
							 | 
						|
								                        "$ref": "#/components/schemas/Capabilities"
							 | 
						|
								                    }
							 | 
						|
								                }
							 | 
						|
								            }
							 | 
						|
								        }
							 | 
						|
								    },
							 | 
						|
								    "paths": {
							 | 
						|
								        "/ocs/v2.php/apps/spreed/api/{apiVersion}/signaling/backend": {
							 | 
						|
								            "post": {
							 | 
						|
								                "operationId": "signaling-backend",
							 | 
						|
								                "summary": "Backend API to query information required for standalone signaling servers",
							 | 
						|
								                "description": "See sections \"Backend validation\" in https://nextcloud-spreed-signaling.readthedocs.io/en/latest/standalone-signaling-api-v1/#backend-requests",
							 | 
						|
								                "tags": [
							 | 
						|
								                    "signaling"
							 | 
						|
								                ],
							 | 
						|
								                "security": [
							 | 
						|
								                    {},
							 | 
						|
								                    {
							 | 
						|
								                        "bearer_auth": []
							 | 
						|
								                    },
							 | 
						|
								                    {
							 | 
						|
								                        "basic_auth": []
							 | 
						|
								                    }
							 | 
						|
								                ],
							 | 
						|
								                "parameters": [
							 | 
						|
								                    {
							 | 
						|
								                        "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": "Always, sorry about that",
							 | 
						|
								                        "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"
							 | 
						|
								                                                    ],
							 | 
						|
								                                                    "properties": {
							 | 
						|
								                                                        "type": {
							 | 
						|
								                                                            "type": "string"
							 | 
						|
								                                                        },
							 | 
						|
								                                                        "error": {
							 | 
						|
								                                                            "type": "object",
							 | 
						|
								                                                            "required": [
							 | 
						|
								                                                                "code",
							 | 
						|
								                                                                "message"
							 | 
						|
								                                                            ],
							 | 
						|
								                                                            "properties": {
							 | 
						|
								                                                                "code": {
							 | 
						|
								                                                                    "type": "string"
							 | 
						|
								                                                                },
							 | 
						|
								                                                                "message": {
							 | 
						|
								                                                                    "type": "string"
							 | 
						|
								                                                                }
							 | 
						|
								                                                            }
							 | 
						|
								                                                        },
							 | 
						|
								                                                        "auth": {
							 | 
						|
								                                                            "type": "object",
							 | 
						|
								                                                            "required": [
							 | 
						|
								                                                                "version"
							 | 
						|
								                                                            ],
							 | 
						|
								                                                            "properties": {
							 | 
						|
								                                                                "version": {
							 | 
						|
								                                                                    "type": "string"
							 | 
						|
								                                                                },
							 | 
						|
								                                                                "userid": {
							 | 
						|
								                                                                    "type": "string"
							 | 
						|
								                                                                },
							 | 
						|
								                                                                "user": {
							 | 
						|
								                                                                    "type": "object",
							 | 
						|
								                                                                    "additionalProperties": {
							 | 
						|
								                                                                        "type": "object"
							 | 
						|
								                                                                    }
							 | 
						|
								                                                                }
							 | 
						|
								                                                            }
							 | 
						|
								                                                        },
							 | 
						|
								                                                        "room": {
							 | 
						|
								                                                            "type": "object",
							 | 
						|
								                                                            "required": [
							 | 
						|
								                                                                "version"
							 | 
						|
								                                                            ],
							 | 
						|
								                                                            "properties": {
							 | 
						|
								                                                                "version": {
							 | 
						|
								                                                                    "type": "string"
							 | 
						|
								                                                                },
							 | 
						|
								                                                                "roomid": {
							 | 
						|
								                                                                    "type": "string"
							 | 
						|
								                                                                },
							 | 
						|
								                                                                "properties": {
							 | 
						|
								                                                                    "type": "object",
							 | 
						|
								                                                                    "additionalProperties": {
							 | 
						|
								                                                                        "type": "object"
							 | 
						|
								                                                                    }
							 | 
						|
								                                                                },
							 | 
						|
								                                                                "permissions": {
							 | 
						|
								                                                                    "type": "array",
							 | 
						|
								                                                                    "items": {
							 | 
						|
								                                                                        "type": "string"
							 | 
						|
								                                                                    }
							 | 
						|
								                                                                },
							 | 
						|
								                                                                "session": {
							 | 
						|
								                                                                    "type": "object",
							 | 
						|
								                                                                    "additionalProperties": {
							 | 
						|
								                                                                        "type": "object"
							 | 
						|
								                                                                    }
							 | 
						|
								                                                                }
							 | 
						|
								                                                            }
							 | 
						|
								                                                        }
							 | 
						|
								                                                    }
							 | 
						|
								                                                }
							 | 
						|
								                                            }
							 | 
						|
								                                        }
							 | 
						|
								                                    }
							 | 
						|
								                                }
							 | 
						|
								                            }
							 | 
						|
								                        }
							 | 
						|
								                    }
							 | 
						|
								                }
							 | 
						|
								            }
							 | 
						|
								        }
							 | 
						|
								    },
							 | 
						|
								    "tags": []
							 | 
						|
								}
							 |