openapi: 3.0.1 info: title: Dyte v2 REST Livestreams Sessions API description: Server-side v2 REST API for the Dyte live video and voice platform. Use it to create and manage meetings, add participants and issue the auth tokens that initialize the frontend SDKs, query completed sessions, and manage recordings, livestreams, and webhooks. Authentication is HTTP Basic with the base64-encoded string organizationId:apiKey. Dyte was acquired by Cloudflare in 2025 and is transitioning to Cloudflare RealtimeKit; the Dyte v2 API is in maintenance mode. termsOfService: https://dyte.io/terms contact: name: Dyte Support url: https://docs.dyte.io/ version: '2.0' servers: - url: https://api.dyte.io/v2 description: Dyte v2 production API security: - basicAuth: [] tags: - name: Sessions description: Query completed and active sessions. paths: /sessions: get: operationId: listSessions tags: - Sessions summary: Fetch all sessions description: Returns a paginated list of completed sessions (meetings that have ended) for the organization. parameters: - $ref: '#/components/parameters/PageNo' - $ref: '#/components/parameters/PerPage' responses: '200': description: A paginated list of sessions. content: application/json: schema: $ref: '#/components/schemas/SessionListResponse' /sessions/{sessionId}: parameters: - $ref: '#/components/parameters/SessionId' get: operationId: getSession tags: - Sessions summary: Fetch a session responses: '200': description: Session details. content: application/json: schema: $ref: '#/components/schemas/SessionResponse' '404': $ref: '#/components/responses/NotFound' /sessions/{sessionId}/participants: parameters: - $ref: '#/components/parameters/SessionId' get: operationId: listSessionParticipants tags: - Sessions summary: Fetch participants of a session responses: '200': description: A list of session participants. content: application/json: schema: $ref: '#/components/schemas/ParticipantListResponse' /active-sessions/{meetingId}: parameters: - $ref: '#/components/parameters/MeetingId' get: operationId: getActiveSession tags: - Sessions summary: Fetch the active session for a meeting responses: '200': description: Active session details. content: application/json: schema: $ref: '#/components/schemas/SessionResponse' components: responses: NotFound: description: The requested resource does not exist. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' parameters: PerPage: name: per_page in: query required: false description: Number of items per page. schema: type: integer default: 20 SessionId: name: sessionId in: path required: true description: Unique session identifier. schema: type: string format: uuid MeetingId: name: meetingId in: path required: true description: Unique meeting identifier. schema: type: string format: uuid PageNo: name: page_no in: query required: false description: Page number for paginated results. schema: type: integer default: 1 schemas: ParticipantListResponse: type: object properties: success: type: boolean data: type: array items: $ref: '#/components/schemas/Participant' paging: $ref: '#/components/schemas/Paging' Paging: type: object properties: total_count: type: integer start_offset: type: integer end_offset: type: integer SessionListResponse: type: object properties: success: type: boolean data: type: array items: $ref: '#/components/schemas/Session' paging: $ref: '#/components/schemas/Paging' Session: type: object properties: id: type: string format: uuid associated_id: type: string description: The meeting id this session belongs to. type: type: string status: type: string live_participants: type: integer max_concurrent_participants: type: integer minutes_consumed: type: number started_at: type: string format: date-time ended_at: type: string format: date-time SessionResponse: type: object properties: success: type: boolean data: $ref: '#/components/schemas/Session' ErrorResponse: type: object properties: success: type: boolean example: false error: type: object properties: code: type: integer message: type: string Participant: type: object properties: id: type: string format: uuid name: type: string picture: type: string format: uri preset_name: type: string custom_participant_id: type: string token: type: string description: Auth token used to initialize the frontend SDKs. created_at: type: string format: date-time updated_at: type: string format: date-time securitySchemes: basicAuth: type: http scheme: basic description: HTTP Basic auth using the base64-encoded string organizationId:apiKey (organizationId as the username, apiKey as the password).