176 lines
8.9 KiB
YAML

recordingStarted:
post:
summary: Recording started
description: >
This webhook is triggered when a recording starts.
> The recording can be in the `STARTING` status for a few seconds before it becomes `ACTIVE`.
operationId: recordingStartedWebhook
parameters:
- $ref: ../components/parameters/x-timestamp.yaml
- $ref: ../components/parameters/x-signature.yaml
# TODO: Use defined schema for request body
requestBody:
required: true
content:
application/json:
schema:
properties:
creationDate:
type: number
description: The date when the event was created (milliseconds since the Unix epoch).
example: 1620000000000
event:
type: string
description: Event type identifier.
example: recordingStarted
data:
properties:
recordingId:
type: string
description: The unique identifier of the recording.
example: room-123--EG_XYZ--XX445
roomId:
type: string
description: The ID of the room where the recording was made.
example: room-123
status:
type: string
description: The status of the recording.
example: STARTING
filename:
type: string
description: The name of the recording file.
example: room-123--XX445.mp4
startDate:
type: number
description: The date when the recording started (milliseconds since the Unix epoch).
example: 1620000000000
responses:
'200':
description: Webhook received successfully
recordingUpdated:
post:
summary: Recording updated
description: >
This webhook is triggered when a recording update occurs.
> This update can be due to a change in the recording status (e.g., from `STARTING` to `ACTIVE`).
operationId: recordingUpdatedWebhook
parameters:
- $ref: ../components/parameters/x-timestamp.yaml
- $ref: ../components/parameters/x-signature.yaml
# TODO: Use defined schema for request body
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
creationDate:
type: number
description: The date when the event was created (milliseconds since the Unix epoch).
example: 1620000000000
event:
type: string
description: Event type identifier.
example: recordingUpdated
data:
properties:
recordingId:
type: string
description: The unique identifier of the recording.
example: room-123--EG_XYZ--XX445
roomId:
type: string
description: The ID of the room where the recording was made.
example: room-123
status:
type: string
enum: [ACTIVE, ENDING]
description: The status of the recording.
example: ACTIVE
filename:
type: string
description: The name of the recording file.
example: room-123--XX445.mp4
startDate:
type: number
description: The date when the recording started (milliseconds since the Unix epoch).
example: 1620000000000
responses:
'200':
description: Webhook received successfully
recordingEnded:
post:
summary: Recording ended
description: >
This webhook is triggered when a recording ends.
> The recording can end due to various reasons, such as the user stopping the recording or the recording reaching its maximum duration.
operationId: recordingEndedWebhook
parameters:
- $ref: ../components/parameters/x-timestamp.yaml
- $ref: ../components/parameters/x-signature.yaml
# TODO: Use defined schema for request body
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
creationDate:
type: number
description: The date when the event was created (milliseconds since the Unix epoch).
example: 1620000000000
event:
type: string
description: Event type identifier.
example: recordingEnded
data:
properties:
recordingId:
type: string
description: The unique identifier of the recording.
example: room-123--EG_XYZ--XX445
roomId:
type: string
description: The ID of the room where the recording was made.
example: room-123
status:
type: string
enum: [COMPLETE, FAILED, ABORTED, LIMITED_REACHED]
description: The status of the recording.
example: COMPLETE
filename:
type: string
description: The name of the recording file.
example: room-123--XX445.mp4
startDate:
type: number
description: The date when the recording started (milliseconds since the Unix epoch).
example: 1620000000000
endDate:
type: number
description: The date when the recording ended (milliseconds since the Unix epoch).
example: 1620000003600
duration:
type: number
description: The duration of the recording in seconds.
example: 3.6
size:
type: number
description: The size of the recording file in bytes.
example: 1024
details:
type: string
description: Additional details about the recording.
example: Stopped using API
responses:
'200':
description: Webhook received successfully