Dyte Webhooks API

Manage webhook event subscriptions.

OpenAPI Specification

dyte-webhooks-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Dyte v2 REST Livestreams Webhooks 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: Webhooks
  description: Manage webhook event subscriptions.
paths:
  /webhooks:
    get:
      operationId: listWebhooks
      tags:
      - Webhooks
      summary: Fetch all webhooks
      responses:
        '200':
          description: A list of webhooks.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookListResponse'
    post:
      operationId: createWebhook
      tags:
      - Webhooks
      summary: Add a webhook
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateWebhookRequest'
      responses:
        '201':
          description: Webhook created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookResponse'
  /webhooks/{webhookId}:
    parameters:
    - $ref: '#/components/parameters/WebhookId'
    patch:
      operationId: updateWebhook
      tags:
      - Webhooks
      summary: Edit a webhook
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateWebhookRequest'
      responses:
        '200':
          description: Webhook updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookResponse'
    delete:
      operationId: deleteWebhook
      tags:
      - Webhooks
      summary: Delete a webhook
      responses:
        '200':
          description: Webhook deleted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
components:
  schemas:
    Webhook:
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
        url:
          type: string
          format: uri
        events:
          type: array
          items:
            type: string
    WebhookResponse:
      type: object
      properties:
        success:
          type: boolean
        data:
          $ref: '#/components/schemas/Webhook'
    WebhookListResponse:
      type: object
      properties:
        success:
          type: boolean
        data:
          type: array
          items:
            $ref: '#/components/schemas/Webhook'
    CreateWebhookRequest:
      type: object
      required:
      - name
      - url
      - events
      properties:
        name:
          type: string
        url:
          type: string
          format: uri
        events:
          type: array
          items:
            type: string
            enum:
            - meeting.started
            - meeting.ended
            - meeting.participantJoined
            - meeting.participantLeft
            - recording.statusUpdate
            - livestreaming.statusUpdate
    SuccessResponse:
      type: object
      properties:
        success:
          type: boolean
        message:
          type: string
  parameters:
    WebhookId:
      name: webhookId
      in: path
      required: true
      description: Unique webhook identifier.
      schema:
        type: string
        format: uuid
  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).