openapi: add endpoints and schemas for managing global preferences in OpenVidu Meet
This commit is contained in:
parent
2b7e2ecf7e
commit
9618ec6f29
@ -0,0 +1,6 @@
|
||||
description: Security preferences
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/internal/security-preferences.yaml'
|
||||
@ -0,0 +1,6 @@
|
||||
description: Webhooks preferences
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/internal/webhooks-preferences.yaml'
|
||||
@ -0,0 +1,5 @@
|
||||
description: Successfully retrieved security preferences
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/internal/security-preferences.yaml'
|
||||
@ -0,0 +1,5 @@
|
||||
description: Successfully retrieved webhooks preferences
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/internal/webhooks-preferences.yaml'
|
||||
@ -0,0 +1,9 @@
|
||||
description: Successfully updated security preferences
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
message:
|
||||
type: string
|
||||
example: 'Security preferences updated successfully'
|
||||
@ -0,0 +1,9 @@
|
||||
description: Successfully updated webhooks preferences
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
message:
|
||||
type: string
|
||||
example: 'Webhooks preferences updated successfully'
|
||||
@ -0,0 +1,8 @@
|
||||
description: PRO Feature Error
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../schemas/error.yaml'
|
||||
example:
|
||||
error: Pro Feature Error
|
||||
message: 'This operation is a PRO feature. Please, upgrade to OpenVidu PRO'
|
||||
@ -0,0 +1,45 @@
|
||||
type: object
|
||||
properties:
|
||||
authentication:
|
||||
$ref: '#/AuthenticationPreferences'
|
||||
description: Preferences for authentication.
|
||||
roomCreationPolicy:
|
||||
$ref: '#/RoomCreationPolicy'
|
||||
description: Preferences for room creation policy.
|
||||
|
||||
AuthenticationPreferences:
|
||||
type: object
|
||||
properties:
|
||||
authMode:
|
||||
type: string
|
||||
enum:
|
||||
- none
|
||||
- moderators_only
|
||||
- all_users
|
||||
default: none
|
||||
example: none
|
||||
description: The authentication mode to enter a room.
|
||||
method:
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enum:
|
||||
- single-user
|
||||
default: single-user
|
||||
example: single-user
|
||||
description: The authentication method to use.
|
||||
|
||||
RoomCreationPolicy:
|
||||
type: object
|
||||
properties:
|
||||
allowRoomCreation:
|
||||
type: boolean
|
||||
default: true
|
||||
example: true
|
||||
description: If true, users will be allowed to create rooms.
|
||||
requireAuthentication:
|
||||
type: boolean
|
||||
default: true
|
||||
example: true
|
||||
description: If true, users will be required to authenticate before creating rooms.
|
||||
@ -0,0 +1,10 @@
|
||||
type: object
|
||||
properties:
|
||||
enabled:
|
||||
type: boolean
|
||||
example: true
|
||||
description: Indicates whether webhooks are enabled or disabled.
|
||||
url:
|
||||
type: string
|
||||
example: 'https://example.com/webhook'
|
||||
description: The URL to which webhooks will be sent. This is only mandatory if webhooks are enabled.
|
||||
@ -26,6 +26,15 @@ MeetRecordingPreferences:
|
||||
default: true
|
||||
example: true
|
||||
description: If true, the room will be allowed to record the video of the participants.
|
||||
allowAccessTo:
|
||||
type: string
|
||||
enum:
|
||||
- admin
|
||||
- admin-moderator
|
||||
- admin-moderator-publisher
|
||||
- public
|
||||
default: admin-moderator-publisher
|
||||
example: admin-moderator-publisher
|
||||
MeetVirtualBackgroundPreferences:
|
||||
type: object
|
||||
properties:
|
||||
|
||||
@ -16,6 +16,12 @@ paths:
|
||||
$ref: './paths/internal/auth.yaml#/~1auth~1refresh'
|
||||
/auth/profile:
|
||||
$ref: './paths/internal/auth.yaml#/~1auth~1profile'
|
||||
/preferences/webhooks:
|
||||
$ref: './paths/internal/global-preferences.yaml#/~1preferences~1webhooks'
|
||||
/preferences/security:
|
||||
$ref: './paths/internal/global-preferences.yaml#/~1preferences~1security'
|
||||
/preferences/appearance:
|
||||
$ref: './paths/internal/global-preferences.yaml#/~1preferences~1appearance'
|
||||
/rooms/{roomId}:
|
||||
$ref: './paths/internal/rooms.yaml#/~1rooms~1{roomId}'
|
||||
/rooms/{roomId}/recording-token:
|
||||
@ -43,6 +49,10 @@ components:
|
||||
schemas:
|
||||
User:
|
||||
$ref: components/schemas/internal/user.yaml
|
||||
WebhooksPreferences:
|
||||
$ref: components/schemas/internal/webhooks-preferences.yaml
|
||||
SecurityPreferences:
|
||||
$ref: components/schemas/internal/security-preferences.yaml
|
||||
MeetRoom:
|
||||
$ref: components/schemas/meet-room.yaml
|
||||
MeetRoomOptions:
|
||||
|
||||
103
backend/openapi/paths/internal/global-preferences.yaml
Normal file
103
backend/openapi/paths/internal/global-preferences.yaml
Normal file
@ -0,0 +1,103 @@
|
||||
/preferences/webhooks:
|
||||
get:
|
||||
operationId: getWebhooksPreferences
|
||||
summary: Get webhooks preferences
|
||||
description: >
|
||||
Retrieves the webhooks preferences for the OpenVidu Meet application.
|
||||
tags:
|
||||
- Internal API - Global Preferences
|
||||
security:
|
||||
- accessTokenCookie: []
|
||||
responses:
|
||||
'200':
|
||||
$ref: '../../components/responses/internal/success-get-webhooks-preferences.yaml'
|
||||
'401':
|
||||
$ref: '../../components/responses/unauthorized-error.yaml'
|
||||
'403':
|
||||
$ref: '../../components/responses/forbidden-error.yaml'
|
||||
'500':
|
||||
$ref: '../../components/responses/internal-server-error.yaml'
|
||||
put:
|
||||
operationId: updateWebhooksPreferences
|
||||
summary: Update webhooks preferences
|
||||
description: >
|
||||
Updates the webhooks preferences for the OpenVidu Meet application.
|
||||
tags:
|
||||
- Internal API - Global Preferences
|
||||
security:
|
||||
- accessTokenCookie: []
|
||||
requestBody:
|
||||
$ref: '../../components/requestBodies/internal/update-webhooks-preferences.yaml'
|
||||
responses:
|
||||
'200':
|
||||
$ref: '../../components/responses/internal/success-update-webhooks-preferences.yaml'
|
||||
'401':
|
||||
$ref: '../../components/responses/unauthorized-error.yaml'
|
||||
'403':
|
||||
$ref: '../../components/responses/forbidden-error.yaml'
|
||||
'422':
|
||||
$ref: '../../components/responses/validation-error.yaml'
|
||||
'500':
|
||||
$ref: '../../components/responses/internal-server-error.yaml'
|
||||
|
||||
/preferences/security:
|
||||
get:
|
||||
operationId: getSecurityPreferences
|
||||
summary: Get security preferences
|
||||
description: >
|
||||
Retrieves the security preferences for the OpenVidu Meet application.
|
||||
tags:
|
||||
- Internal API - Global Preferences
|
||||
responses:
|
||||
'200':
|
||||
$ref: '../../components/responses/internal/success-get-security-preferences.yaml'
|
||||
'500':
|
||||
$ref: '../../components/responses/internal-server-error.yaml'
|
||||
put:
|
||||
operationId: updateSecurityPreferences
|
||||
summary: Update security preferences
|
||||
description: >
|
||||
Updates the security preferences for the OpenVidu Meet application.
|
||||
tags:
|
||||
- Internal API - Global Preferences
|
||||
security:
|
||||
- accessTokenCookie: []
|
||||
requestBody:
|
||||
$ref: '../../components/requestBodies/internal/update-security-preferences.yaml'
|
||||
responses:
|
||||
'200':
|
||||
$ref: '../../components/responses/internal/success-update-security-preferences.yaml'
|
||||
'401':
|
||||
$ref: '../../components/responses/unauthorized-error.yaml'
|
||||
'403':
|
||||
$ref: '../../components/responses/forbidden-error.yaml'
|
||||
'422':
|
||||
$ref: '../../components/responses/validation-error.yaml'
|
||||
'500':
|
||||
$ref: '../../components/responses/internal-server-error.yaml'
|
||||
|
||||
/preferences/appearance:
|
||||
get:
|
||||
operationId: getAppearancePreferences
|
||||
summary: Get appearance preferences
|
||||
description: >
|
||||
Retrieves the appearance preferences for the OpenVidu Meet application.
|
||||
tags:
|
||||
- Internal API - Global Preferences
|
||||
security:
|
||||
- accessTokenCookie: []
|
||||
responses:
|
||||
'202':
|
||||
$ref: '../../components/responses/pro-feature-error.yaml'
|
||||
put:
|
||||
operationId: updateAppearancePreferences
|
||||
summary: Update appearance preferences
|
||||
description: >
|
||||
Updates the appearance preferences for the OpenVidu Meet application.
|
||||
tags:
|
||||
- Internal API - Global Preferences
|
||||
security:
|
||||
- accessTokenCookie: []
|
||||
responses:
|
||||
'202':
|
||||
$ref: '../../components/responses/pro-feature-error.yaml'
|
||||
@ -4,6 +4,8 @@
|
||||
description: Operations related to managing OpenVidu Meet recordings
|
||||
- name: Internal API - Authentication
|
||||
description: Authentication operations
|
||||
- name: Internal API - Global Preferences
|
||||
description: Operations related to managing global preferences in OpenVidu Meet
|
||||
- name: Internal API - Rooms
|
||||
description: Operations related to managing OpenVidu Meet rooms
|
||||
- name: Internal API - Participant
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user