Webex Meetings API

Enables scheduling, managing, and controlling Webex meetings programmatically. Provides endpoints for creating meetings, managing attendees, preferences, and retrieving meeting details.

OpenAPI Specification

cisco-webex-meetings-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Cisco Webex Meetings API
  description: >-
    Enables scheduling, managing, and controlling Webex meetings
    programmatically. Provides endpoints for creating meetings, managing
    attendees, preferences, and retrieving meeting details.
  version: 1.0.0
  contact:
    name: Cisco Webex Developer Support
    url: https://developer.webex.com/support
  license:
    name: Cisco Webex API Terms of Service
    url: https://developer.webex.com/terms-of-service
servers:
  - url: https://webexapis.com/v1
    description: Webex Production API
security:
  - bearerAuth: []
tags:
  - name: Meetings
    description: Operations for managing Webex meetings
  - name: Registrants
    description: Operations for managing meeting registrants
paths:
  /meetings:
    get:
      operationId: listMeetings
      summary: Cisco Webex List Meetings
      description: >-
        Lists meetings. You can specify a date range, meeting type, and other
        filters to narrow results. Long-running meeting series will only have
        instances within the specified date range returned.
      tags:
        - Meetings
      parameters:
        - name: meetingNumber
          in: query
          description: Meeting number for the meeting.
          schema:
            type: string
        - name: webLink
          in: query
          description: Meeting link for the meeting.
          schema:
            type: string
        - name: roomId
          in: query
          description: Associated room ID for the meeting.
          schema:
            type: string
        - name: meetingType
          in: query
          description: >-
            Meeting type to filter by. Possible values are meetingSeries,
            scheduledMeeting, or meeting.
          schema:
            type: string
            enum:
              - meetingSeries
              - scheduledMeeting
              - meeting
        - name: state
          in: query
          description: >-
            Meeting state to filter by. Possible values are active, scheduled,
            ready, lobby, connected, started, expiring, expired, ended, missed,
            or cancelled.
          schema:
            type: string
        - name: scheduledType
          in: query
          description: >-
            Scheduled type of the meeting. Possible values are meeting,
            webinar, or personalRoomMeeting.
          schema:
            type: string
        - name: from
          in: query
          description: Start date and time in ISO 8601 format.
          schema:
            type: string
            format: date-time
        - name: to
          in: query
          description: End date and time in ISO 8601 format.
          schema:
            type: string
            format: date-time
        - name: hostEmail
          in: query
          description: Email address of the meeting host (admin use).
          schema:
            type: string
            format: email
        - name: max
          in: query
          description: Maximum number of meetings to return (default 10, max 100).
          schema:
            type: integer
            default: 10
            minimum: 1
            maximum: 100
      responses:
        '200':
          description: Successful response with list of meetings.
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/Meeting'
        '401':
          description: Unauthorized - invalid or missing access token.
    post:
      operationId: createMeeting
      summary: Cisco Webex Create a Meeting
      description: >-
        Creates a new meeting. The authenticated user becomes the host of the
        meeting. Supports scheduling one-time, recurring, and personal room
        meetings.
      tags:
        - Meetings
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateMeetingRequest'
      responses:
        '200':
          description: Meeting created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Meeting'
        '400':
          description: Bad request - invalid input parameters.
        '401':
          description: Unauthorized - invalid or missing access token.
  /meetings/{meetingId}:
    get:
      operationId: getMeetingDetails
      summary: Cisco Webex Get Meeting Details
      description: >-
        Retrieves details for a meeting with a specified meeting ID. The
        meeting can be a meeting series, a scheduled meeting, or a meeting
        instance that has happened or is happening.
      tags:
        - Meetings
      parameters:
        - name: meetingId
          in: path
          required: true
          description: Unique identifier for the meeting.
          schema:
            type: string
        - name: current
          in: query
          description: >-
            Whether to return the current scheduled meeting of a meeting series.
          schema:
            type: boolean
        - name: hostEmail
          in: query
          description: Email address of the meeting host (admin use).
          schema:
            type: string
            format: email
      responses:
        '200':
          description: Successful response with meeting details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Meeting'
        '404':
          description: Meeting not found.
    put:
      operationId: updateMeeting
      summary: Cisco Webex Update a Meeting
      description: >-
        Updates details for a meeting with a specified meeting ID. Allows
        changing the title, password, start/end times, recurrence, and other
        meeting properties.
      tags:
        - Meetings
      parameters:
        - name: meetingId
          in: path
          required: true
          description: Unique identifier for the meeting.
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateMeetingRequest'
      responses:
        '200':
          description: Meeting updated successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Meeting'
        '400':
          description: Bad request - invalid input parameters.
        '404':
          description: Meeting not found.
    delete:
      operationId: deleteMeeting
      summary: Cisco Webex Delete a Meeting
      description: >-
        Deletes a meeting with a specified meeting ID. The deleted meeting
        will no longer be accessible and all scheduled instances are cancelled.
      tags:
        - Meetings
      parameters:
        - name: meetingId
          in: path
          required: true
          description: Unique identifier for the meeting.
          schema:
            type: string
        - name: hostEmail
          in: query
          description: Email address of the meeting host (admin use).
          schema:
            type: string
            format: email
      responses:
        '204':
          description: Meeting deleted successfully.
        '404':
          description: Meeting not found.
  /meetings/{meetingId}/registrants:
    get:
      operationId: listMeetingRegistrants
      summary: Cisco Webex List Meeting Registrants
      description: >-
        Lists meeting registrants for a specified meeting. Only applies to
        meetings with registration enabled.
      tags:
        - Registrants
      parameters:
        - name: meetingId
          in: path
          required: true
          description: Unique identifier for the meeting series.
          schema:
            type: string
        - name: hostEmail
          in: query
          description: Email address of the meeting host (admin use).
          schema:
            type: string
            format: email
        - name: max
          in: query
          description: Maximum number of registrants to return.
          schema:
            type: integer
            default: 100
      responses:
        '200':
          description: Successful response with list of registrants.
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/Registrant'
  /meetings/{meetingId}/registrants/approve:
    post:
      operationId: approveMeetingRegistrants
      summary: Cisco Webex Batch Approve Meeting Registrants
      description: >-
        Approves one or more pending registrants for a meeting with
        registration enabled.
      tags:
        - Registrants
      parameters:
        - name: meetingId
          in: path
          required: true
          description: Unique identifier for the meeting series.
          schema:
            type: string
        - name: current
          in: query
          description: Whether to filter for the current scheduled meeting.
          schema:
            type: boolean
        - name: hostEmail
          in: query
          description: Email address of the meeting host (admin use).
          schema:
            type: string
            format: email
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                sendEmail:
                  type: boolean
                  description: Whether to send notification email to registrants.
                registrants:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                        description: Registrant ID.
      responses:
        '204':
          description: Registrants approved successfully.
  /meetings/{meetingId}/registrants/reject:
    post:
      operationId: rejectMeetingRegistrants
      summary: Cisco Webex Batch Reject Meeting Registrants
      description: >-
        Rejects one or more pending registrants for a meeting with
        registration enabled.
      tags:
        - Registrants
      parameters:
        - name: meetingId
          in: path
          required: true
          description: Unique identifier for the meeting series.
          schema:
            type: string
        - name: current
          in: query
          description: Whether to filter for the current scheduled meeting.
          schema:
            type: boolean
        - name: hostEmail
          in: query
          description: Email address of the meeting host (admin use).
          schema:
            type: string
            format: email
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                sendEmail:
                  type: boolean
                registrants:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
      responses:
        '204':
          description: Registrants rejected successfully.
  /meetings/{meetingId}/registrants/cancel:
    post:
      operationId: cancelMeetingRegistrants
      summary: Cisco Webex Batch Cancel Meeting Registrants
      description: >-
        Cancels one or more approved registrants for a meeting with
        registration enabled.
      tags:
        - Registrants
      parameters:
        - name: meetingId
          in: path
          required: true
          description: Unique identifier for the meeting series.
          schema:
            type: string
        - name: current
          in: query
          description: Whether to filter for the current scheduled meeting.
          schema:
            type: boolean
        - name: hostEmail
          in: query
          description: Email address of the meeting host (admin use).
          schema:
            type: string
            format: email
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                sendEmail:
                  type: boolean
                registrants:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
      responses:
        '204':
          description: Registrants cancelled successfully.
  /meetings/{meetingId}/registrants/bulkInsert:
    post:
      operationId: batchRegisterMeetingRegistrants
      summary: Cisco Webex Batch Register Meeting Registrants
      description: >-
        Registers one or more people for a meeting with registration enabled.
        Supports bulk insertion of registrant details.
      tags:
        - Registrants
      parameters:
        - name: meetingId
          in: path
          required: true
          description: Unique identifier for the meeting series.
          schema:
            type: string
        - name: current
          in: query
          description: Whether to filter for the current scheduled meeting.
          schema:
            type: boolean
        - name: hostEmail
          in: query
          description: Email address of the meeting host (admin use).
          schema:
            type: string
            format: email
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                items:
                  type: array
                  items:
                    $ref: '#/components/schemas/RegistrantInput'
      responses:
        '200':
          description: Registrants created successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/Registrant'
  /meetings/{meetingId}/registrants/bulkDelete:
    post:
      operationId: batchDeleteMeetingRegistrants
      summary: Cisco Webex Batch Delete Meeting Registrants
      description: >-
        Deletes one or more registrants from a meeting with registration enabled.
      tags:
        - Registrants
      parameters:
        - name: meetingId
          in: path
          required: true
          description: Unique identifier for the meeting series.
          schema:
            type: string
        - name: current
          in: query
          description: Whether to filter for the current scheduled meeting.
          schema:
            type: boolean
        - name: hostEmail
          in: query
          description: Email address of the meeting host (admin use).
          schema:
            type: string
            format: email
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                registrants:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
      responses:
        '204':
          description: Registrants deleted successfully.
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Webex API access token. Obtain via OAuth 2.0 authorization flow or
        personal access token from developer.webex.com.
  schemas:
    Meeting:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the meeting.
        meetingNumber:
          type: string
          description: Meeting number.
        title:
          type: string
          description: Meeting title.
        password:
          type: string
          description: Meeting password.
        meetingType:
          type: string
          description: Meeting type.
          enum:
            - meetingSeries
            - scheduledMeeting
            - meeting
        state:
          type: string
          description: Current state of the meeting.
        timezone:
          type: string
          description: Time zone for the meeting.
        start:
          type: string
          format: date-time
          description: Start time in ISO 8601 format.
        end:
          type: string
          format: date-time
          description: End time in ISO 8601 format.
        hostUserId:
          type: string
          description: Unique identifier for the meeting host.
        hostDisplayName:
          type: string
          description: Display name of the meeting host.
        hostEmail:
          type: string
          format: email
          description: Email address of the meeting host.
        webLink:
          type: string
          format: uri
          description: Link to join the meeting from a browser.
        sipAddress:
          type: string
          description: SIP address for joining via video system.
        dialInIpAddress:
          type: string
          description: IP address for dial-in.
        scheduledType:
          type: string
          description: Scheduled type of the meeting.
          enum:
            - meeting
            - webinar
            - personalRoomMeeting
        recurrence:
          type: string
          description: Recurrence rule in iCalendar format.
        telephony:
          type: object
          description: Telephony information for the meeting.
          properties:
            accessCode:
              type: string
            callInNumbers:
              type: array
              items:
                type: object
                properties:
                  label:
                    type: string
                  callInNumber:
                    type: string
                  tollType:
                    type: string
        registrationEnabled:
          type: boolean
          description: Whether registration is enabled for the meeting.
    CreateMeetingRequest:
      type: object
      required:
        - title
        - start
        - end
      properties:
        title:
          type: string
          description: Meeting title.
        password:
          type: string
          description: Meeting password.
        scheduledType:
          type: string
          description: Scheduled type of the meeting.
          enum:
            - meeting
            - webinar
            - personalRoomMeeting
        start:
          type: string
          format: date-time
          description: Start time in ISO 8601 format.
        end:
          type: string
          format: date-time
          description: End time in ISO 8601 format.
        timezone:
          type: string
          description: Time zone for the meeting.
        recurrence:
          type: string
          description: Recurrence rule in iCalendar format.
        enabledAutoRecordMeeting:
          type: boolean
          description: Whether auto-recording is enabled.
        allowAnyUserToBeCoHost:
          type: boolean
          description: Whether any user can be a co-host.
        hostEmail:
          type: string
          format: email
          description: Email of the meeting host (admin use).
        invitees:
          type: array
          description: List of invitees.
          items:
            type: object
            properties:
              email:
                type: string
                format: email
              displayName:
                type: string
              coHost:
                type: boolean
        registrationEnabled:
          type: boolean
          description: Whether to enable registration.
    UpdateMeetingRequest:
      type: object
      required:
        - title
        - start
        - end
      properties:
        title:
          type: string
          description: Meeting title.
        password:
          type: string
          description: Meeting password.
        start:
          type: string
          format: date-time
          description: Start time in ISO 8601 format.
        end:
          type: string
          format: date-time
          description: End time in ISO 8601 format.
        timezone:
          type: string
          description: Time zone for the meeting.
        recurrence:
          type: string
          description: Recurrence rule in iCalendar format.
        enabledAutoRecordMeeting:
          type: boolean
          description: Whether auto-recording is enabled.
        allowAnyUserToBeCoHost:
          type: boolean
          description: Whether any user can be a co-host.
        hostEmail:
          type: string
          format: email
          description: Email of the meeting host (admin use).
    Registrant:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the registrant.
        status:
          type: string
          description: Registration status.
          enum:
            - pending
            - approved
            - rejected
            - cancelled
        firstName:
          type: string
          description: First name of the registrant.
        lastName:
          type: string
          description: Last name of the registrant.
        email:
          type: string
          format: email
          description: Email address of the registrant.
        jobTitle:
          type: string
          description: Job title of the registrant.
        companyName:
          type: string
          description: Company name of the registrant.
        registrationTime:
          type: string
          format: date-time
          description: Time the registrant registered.
    RegistrantInput:
      type: object
      required:
        - firstName
        - lastName
        - email
      properties:
        firstName:
          type: string
          description: First name of the registrant.
        lastName:
          type: string
          description: Last name of the registrant.
        email:
          type: string
          format: email
          description: Email address of the registrant.
        jobTitle:
          type: string
          description: Job title of the registrant.
        companyName:
          type: string
          description: Company name of the registrant.
        address1:
          type: string
          description: Address line 1.
        city:
          type: string
          description: City.
        state:
          type: string
          description: State or province.
        zipCode:
          type: string
          description: Postal or zip code.
        countryRegion:
          type: string
          description: Country or region.
        phone:
          type: string
          description: Phone number.