openapi: 3.1.0 info: title: Cisco Webex Rooms API description: >- Create and manage Webex spaces (rooms) for collaboration. Rooms are virtual meeting places where people post messages and collaborate, and can be organized within teams. 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: Rooms description: Operations for managing Webex rooms (spaces) paths: /rooms: get: operationId: listRooms summary: Cisco Webex List Rooms description: >- Lists rooms to which the authenticated user belongs. Supports filtering by team, room type, and sorting options. Results are paginated. tags: - Rooms parameters: - name: teamId in: query description: Filter rooms by team ID. schema: type: string - name: type in: query description: Filter by room type. schema: type: string enum: - direct - group - name: orgPublicSpaces in: query description: Show organization public spaces. schema: type: boolean - name: from in: query description: Filter rooms made public after this date and time. schema: type: string format: date-time - name: to in: query description: Filter rooms made public before this date and time. schema: type: string format: date-time - name: sortBy in: query description: Sort order for the results. schema: type: string enum: - id - lastactivity - created - name: max in: query description: Maximum number of rooms to return (default 100, max 1000). schema: type: integer default: 100 minimum: 1 maximum: 1000 responses: '200': description: Successful response with list of rooms. content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/Room' '401': description: Unauthorized - invalid or missing access token. post: operationId: createRoom summary: Cisco Webex Create a Room description: >- Creates a new room (space). The authenticated user is automatically added as a member of the room. Rooms can optionally be associated with a team. tags: - Rooms requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateRoomRequest' responses: '200': description: Room created successfully. content: application/json: schema: $ref: '#/components/schemas/Room' '400': description: Bad request - invalid input parameters. '401': description: Unauthorized - invalid or missing access token. /rooms/{roomId}: get: operationId: getRoomDetails summary: Cisco Webex Get Room Details description: >- Shows details for a room by ID. Only members of the room can view room details. tags: - Rooms parameters: - name: roomId in: path required: true description: Unique identifier for the room. schema: type: string responses: '200': description: Successful response with room details. content: application/json: schema: $ref: '#/components/schemas/Room' '404': description: Room not found. put: operationId: updateRoom summary: Cisco Webex Update a Room description: >- Updates details for a room by ID. Only moderators of the room or admins can update room properties. tags: - Rooms parameters: - name: roomId in: path required: true description: Unique identifier for the room. schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateRoomRequest' responses: '200': description: Room updated successfully. content: application/json: schema: $ref: '#/components/schemas/Room' '400': description: Bad request - invalid input parameters. '404': description: Room not found. delete: operationId: deleteRoom summary: Cisco Webex Delete a Room description: >- Deletes a room by ID. Deleting a room also removes all messages, memberships, and content within the room. This action cannot be undone. tags: - Rooms parameters: - name: roomId in: path required: true description: Unique identifier for the room. schema: type: string responses: '204': description: Room deleted successfully. '404': description: Room not found. /rooms/{roomId}/meetingInfo: get: operationId: getRoomMeetingDetails summary: Cisco Webex Get Room Meeting Details description: >- Shows meeting details for a room such as the SIP address, meeting URL, toll and toll-free dial-in numbers. Only available for group rooms. tags: - Rooms parameters: - name: roomId in: path required: true description: Unique identifier for the room. schema: type: string responses: '200': description: Successful response with room meeting details. content: application/json: schema: $ref: '#/components/schemas/RoomMeetingInfo' '404': description: Room not found. 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: Room: type: object properties: id: type: string description: Unique identifier for the room. title: type: string description: A user-friendly name for the room. type: type: string description: The type of room. enum: - direct - group isLocked: type: boolean description: Whether the room is moderated. isPublic: type: boolean description: Whether the room is public and discoverable. isAnnouncementOnly: type: boolean description: Whether only moderators can post. isReadOnly: type: boolean description: Whether the room is read-only. teamId: type: string description: The team ID associated with the room. lastActivity: type: string format: date-time description: Date and time of the last activity in the room. creatorId: type: string description: The person ID of the room creator. ownerId: type: string description: The person ID of the room owner. classificationId: type: string description: The classification ID of the room. description: type: string description: The description of the room. madePublic: type: string format: date-time description: Date and time the room was made public. created: type: string format: date-time description: Date and time the room was created. CreateRoomRequest: type: object required: - title properties: title: type: string description: A user-friendly name for the room. teamId: type: string description: The team ID to associate the room with. classificationId: type: string description: The classification ID for the room. isLocked: type: boolean description: Whether to enable moderation. isPublic: type: boolean description: Whether the room is discoverable. description: type: string description: The description of the room. isAnnouncementOnly: type: boolean description: Whether only moderators can post. UpdateRoomRequest: type: object required: - title properties: title: type: string description: A user-friendly name for the room. teamId: type: string description: The team ID to assign the room to. classificationId: type: string description: The classification ID for the room. isLocked: type: boolean description: Whether to enable moderation. isPublic: type: boolean description: Whether the room is discoverable. description: type: string description: The description of the room. isAnnouncementOnly: type: boolean description: Whether only moderators can post. isReadOnly: type: boolean description: Whether the room is read-only. RoomMeetingInfo: type: object properties: roomId: type: string description: Unique identifier for the room. meetingLink: type: string format: uri description: The meeting link for the room. sipAddress: type: string description: The SIP address for the room. meetingNumber: type: string description: The meeting number for the room. meetingId: type: string description: The meeting ID for the room. callInTollFreeNumber: type: string description: Toll-free dial-in number. callInTollNumber: type: string description: Toll dial-in number.