/** * This file was auto-generated by openapi-typescript. * Do not make direct changes to the file. */ /** OneOf type helpers */ type Without = { [P in Exclude]?: never }; type XOR = (T | U) extends object ? (Without & U) | (Without & T) : T | U; type OneOf = T extends [infer Only] ? Only : T extends [infer A, infer B, ...infer Rest] ? OneOf<[XOR, ...Rest]> : never; export type paths = { "/ocs/v2.php/apps/spreed/api/{apiVersion}/bot/admin": { /** * List admin bots * @description This endpoint requires admin access */ get: operations["bot-admin-list-bots"]; }; "/ocs/v2.php/apps/spreed/api/{apiVersion}/certificate/expiration": { /** * Get the certificate expiration for a host * @description This endpoint requires admin access */ get: operations["certificate-get-certificate-expiration"]; }; "/ocs/v2.php/apps/spreed/api/{apiVersion}/hostedsignalingserver/requesttrial": { /** * Request a trial account * @description This endpoint requires admin access */ post: operations["hosted_signaling_server-request-trial"]; }; "/ocs/v2.php/apps/spreed/api/{apiVersion}/hostedsignalingserver/delete": { /** * Delete the account * @description This endpoint requires admin access */ delete: operations["hosted_signaling_server-delete-account"]; }; "/ocs/v2.php/apps/spreed/api/{apiVersion}/bridge": { /** * Stop all bridges * @description This endpoint requires admin access */ delete: operations["matterbridge_settings-stop-all-bridges"]; }; "/ocs/v2.php/apps/spreed/api/{apiVersion}/bridge/version": { /** * Get Matterbridge version * @description This endpoint requires admin access */ get: operations["matterbridge_settings-get-matterbridge-version"]; }; "/ocs/v2.php/apps/spreed/api/{apiVersion}/recording/welcome/{serverId}": { /** * Get the welcome message of a recording server * @description This endpoint requires admin access */ get: operations["recording-get-welcome-message"]; }; "/ocs/v2.php/apps/spreed/api/{apiVersion}/settings/sip": { /** * Update SIP bridge settings * @description This endpoint requires admin access */ post: operations["settings-setsip-settings"]; }; "/ocs/v2.php/apps/spreed/api/{apiVersion}/signaling/welcome/{serverId}": { /** * Get the welcome message from a signaling server * @description Only available for logged-in users because guests can not use the apps right now. * This endpoint requires admin access */ get: operations["signaling-get-welcome-message"]; }; }; export type webhooks = Record; export type components = { schemas: { Bot: { description: string | null; /** Format: int64 */ id: number; name: string; /** Format: int64 */ state: number; }; BotWithDetails: components["schemas"]["Bot"] & { /** Format: int64 */ error_count: number; /** Format: int64 */ features: number; /** Format: int64 */ last_error_date: number; last_error_message: string; url: string; url_hash: string; }; Capabilities: { features: string[]; "features-local": string[]; config: { attachments: { allowed: boolean; folder?: string; }; call: { enabled: boolean; "breakout-rooms": boolean; recording: boolean; /** Format: int64 */ "recording-consent": number; "supported-reactions": string[]; "predefined-backgrounds": string[]; "can-upload-background": boolean; "sip-enabled": boolean; "sip-dialout-enabled": boolean; "can-enable-sip": boolean; }; chat: { /** Format: int64 */ "max-length": number; /** Format: int64 */ "read-privacy": number; "has-translation-providers": boolean; /** Format: int64 */ "typing-privacy": number; }; conversations: { "can-create": boolean; }; federation: { enabled: boolean; "incoming-enabled": boolean; "outgoing-enabled": boolean; "only-trusted-servers": boolean; }; previews: { /** Format: int64 */ "max-gif-size": number; }; signaling: { /** Format: int64 */ "session-ping-limit": number; "hello-v2-token-key"?: string; }; }; "config-local": { [key: string]: string[]; }; version: string; }; OCSMeta: { status: string; statuscode: number; message?: string; totalitems?: string; itemsperpage?: string; }; PublicCapabilities: OneOf<[{ spreed: components["schemas"]["Capabilities"]; }, unknown[]]>; }; responses: never; parameters: never; requestBodies: never; headers: never; pathItems: never; }; export type $defs = Record; export type external = Record; export type operations = { /** * List admin bots * @description This endpoint requires admin access */ "bot-admin-list-bots": { parameters: { header: { /** @description Required to be true for the API request to pass */ "OCS-APIRequest": boolean; }; path: { apiVersion: "v1"; }; }; responses: { /** @description Bot list returned */ 200: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: components["schemas"]["BotWithDetails"][]; }; }; }; }; }; }; /** * Get the certificate expiration for a host * @description This endpoint requires admin access */ "certificate-get-certificate-expiration": { parameters: { query: { /** @description Host to check */ host: string; }; header: { /** @description Required to be true for the API request to pass */ "OCS-APIRequest": boolean; }; path: { apiVersion: "v1"; }; }; responses: { /** @description Certificate expiration returned */ 200: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: { /** Format: int64 */ expiration_in_days: number | null; }; }; }; }; }; /** @description Getting certificate expiration is not possible */ 400: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: { message: string; }; }; }; }; }; }; }; /** * Request a trial account * @description This endpoint requires admin access */ "hosted_signaling_server-request-trial": { parameters: { query: { /** @description Server URL */ url: string; /** @description Display name of the user */ name: string; /** @description Email of the user */ email: string; /** @description Language of the user */ language: string; /** @description Country of the user */ country: string; }; header: { /** @description Required to be true for the API request to pass */ "OCS-APIRequest": boolean; }; path: { apiVersion: "v1"; }; }; responses: { /** @description Trial requested successfully */ 200: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: { [key: string]: Record; }; }; }; }; }; /** @description Requesting trial is not possible */ 400: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: { message: string; }; }; }; }; }; 500: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: { message: string; }; }; }; }; }; }; }; /** * Delete the account * @description This endpoint requires admin access */ "hosted_signaling_server-delete-account": { parameters: { header: { /** @description Required to be true for the API request to pass */ "OCS-APIRequest": boolean; }; path: { apiVersion: "v1"; }; }; responses: { /** @description Account deleted successfully */ 204: { content: never; }; /** @description Deleting account is not possible */ 400: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: { message: string; }; }; }; }; }; 500: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: { message: string; }; }; }; }; }; }; }; /** * Stop all bridges * @description This endpoint requires admin access */ "matterbridge_settings-stop-all-bridges": { parameters: { header: { /** @description Required to be true for the API request to pass */ "OCS-APIRequest": boolean; }; path: { apiVersion: "v1"; }; }; responses: { /** @description All bridges stopped successfully */ 200: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: boolean; }; }; }; }; /** @description Stopping all bridges is not possible */ 406: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: { error: string; }; }; }; }; }; }; }; /** * Get Matterbridge version * @description This endpoint requires admin access */ "matterbridge_settings-get-matterbridge-version": { parameters: { header: { /** @description Required to be true for the API request to pass */ "OCS-APIRequest": boolean; }; path: { apiVersion: "v1"; }; }; responses: { /** @description Bridge version returned */ 200: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: { version: string; }; }; }; }; }; /** @description Getting bridge version is not possible */ 400: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: { error: string; }; }; }; }; }; }; }; /** * Get the welcome message of a recording server * @description This endpoint requires admin access */ "recording-get-welcome-message": { parameters: { header: { /** @description Required to be true for the API request to pass */ "OCS-APIRequest": boolean; }; path: { apiVersion: "v1"; /** @description ID of the server */ serverId: number; }; }; responses: { /** @description Welcome message returned */ 200: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: { /** Format: double */ version: number; }; }; }; }; }; /** @description Recording server not found or not configured */ 404: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: unknown; }; }; }; }; 500: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: { error: string; }; }; }; }; }; }; }; /** * Update SIP bridge settings * @description This endpoint requires admin access */ "settings-setsip-settings": { parameters: { query?: { /** @description New SIP groups */ "sipGroups[]"?: string[]; /** @description New dial info */ dialInInfo?: string; /** @description New shared secret */ sharedSecret?: string; }; header: { /** @description Required to be true for the API request to pass */ "OCS-APIRequest": boolean; }; path: { apiVersion: "v1"; }; }; responses: { /** @description Successfully set new SIP settings */ 200: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: unknown; }; }; }; }; }; }; /** * Get the welcome message from a signaling server * @description Only available for logged-in users because guests can not use the apps right now. * This endpoint requires admin access */ "signaling-get-welcome-message": { parameters: { header: { /** @description Required to be true for the API request to pass */ "OCS-APIRequest": boolean; }; path: { apiVersion: "v3"; /** @description ID of the signaling server */ serverId: number; }; }; responses: { /** @description Welcome message returned */ 200: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: { [key: string]: Record; }; }; }; }; }; /** @description Signaling server not found */ 404: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: unknown; }; }; }; }; 500: { content: { "application/json": { ocs: { meta: components["schemas"]["OCSMeta"]; data: { error: string; version?: string; }; }; }; }; }; }; }; };