DocumentationBlogSupport
Log inSign up
Log inSign up
BlogSupport
Build
Getting StartedPlatform Introduction
Embedded Apps
What's NewOverviewDeveloper GuideSidebar API Quick StartSubmission Checklist for Embedded Apps
Design Guidelines
MessagingMeetingsDevicesSidebarSidebar on Mobile
API Reference
BotsButtons and CardsIntegrationsBYODSService AppsService App GuestsService Apps G2GGuest IssuerWidgetsWebex ConnectLogin with WebexInstant ConnectInstant Connect Meeting LinksDeveloper SandboxBeta ProgramSubmit Your AppSupport PolicyFAQs
APIs
API Behavior ChangesPartners API GuideXML API DeprecationAccess the APIREST API BasicsCompliance
Webex APIs
Reference
Data Sources
Admin
OverviewAdmin APIsHybrid ServicesAuthentication
Guides
Hybrid ServicesWebhooksReal-time File DLP BasicsProvisioning APIsBackground ImagesAudit Events Error Reference
Reference
Admin Audit EventsAuthorizationsEventsGroupsHistorical AnalyticsHybrid ClustersHybrid ConnectorsLicensesMeeting QualitiesOrganization ContactsOrganizationsPartner ManagementPartner Reports/TemplatesPartner TagsPeopleRecording ReportRecordingsReport TemplatesReportsResource Group MembershipsResource GroupsRolesSecurity Audit EventsSession TypesSettingsSpace ClassificationsTracking CodesWorkspace LocationsWorkspace Metrics
Webex Calling Beta
Overview
Guides
Integrations and AuthorizationMetadata and Samples
Webex Calling
OverviewSDKs and ToolsWhat's New
Guides
Integrations and AuthorizationProvisioning APIsMetadata and SamplesBackground Images
Reference
Call ControlsCall RoutingCall Settings For MeCalling Service SettingsClient Call SettingsConference ControlsConverged RecordingsDECT Devices SettingsDevice Call SettingsDevicesEmergency Services SettingsFeatures: Announcement PlaylistFeatures: Announcement RepositoryFeatures: Auto AttendantFeatures: Call ParkFeatures: Call PickupFeatures: Call QueueFeatures: Call RecordingFeatures: Customer Experience EssentialsFeatures: Hunt GroupFeatures: Operating ModesFeatures: Paging GroupFeatures: Single Number ReachLocation Call SettingsLocation Call Settings: Call HandlingLocation Call Settings: SchedulesLocation Call Settings: VoicemailLocationsNumbersPSTNPartner Reports/TemplatesPeopleRecording ReportReportsReports: Detailed Call HistorySend Activation EmailUser Call SettingsVirtual Line Call SettingsWorkspace Call SettingsWorkspaces
Webex for Broadworks
Overview
Guides
Integrations and AuthorizationDeveloper's Guide
Reference
BroadWorks Billing ReportsBroadWorks EnterprisesBroadWorks SubscribersBroadWorks Workspaces
Webex for Wholesale
Overview
Guides
Developer's Guide
Reference
Wholesale Billing ReportsWholesale Provisioning
Webex for UCM
Guides
Integrations and Authorization
Reference
UCM Profile
Contact Center
Overview
Reference
Data Sources
Customer Journey Data
Overview
Guides
Getting StartedFAQ
Devices
Overview
Guides
Devices
Reference
Device Call SettingsDevice ConfigurationsDevicesWorkspace LocationsWorkspace MetricsWorkspace PersonalizationWorkspacesxAPI
Directory Services
Reference
Domain ManagementIdentity Organization
Meetings
Overview
Guides
Integrations and AuthorizationWebhooksWebinar GuideMeeting Resource Guide
Reference
Meeting ChatsMeeting Closed CaptionsMeeting InviteesMeeting MessagesMeeting ParticipantsMeeting PollsMeeting PreferencesMeeting Q and AMeeting QualitiesMeeting TranscriptsMeetingsMeetings Summary ReportPeopleRecording ReportRecordingsSession TypesTracking CodesVideo MeshWebhooks
Messaging
Overview
Guides
BotsIntegrations and AuthorizationWebhooksButtons and Cards
Reference
Attachment ActionsEventsMembershipsMessagesPeopleRoom TabsRoomsTeam MembershipsTeamsWebhooks
SCIM 2
Overview
Reference
SCIM 2 BulkSCIM 2 GroupsSCIM 2 Users
Workspace Integrations
OverviewTechnical DetailsControl Hub Features
Webex Status API
Full API Reference
Admin Audit EventsAttachment ActionsAuthorizationsBroadWorks Billing ReportsBroadWorks EnterprisesBroadWorks SubscribersBroadWorks WorkspacesCall ControlsCall RoutingCall Settings For MeCalling Service SettingsClient Call SettingsConference ControlsConverged RecordingsDECT Devices SettingsData SourcesDevice Call SettingsDevice ConfigurationsDevicesDomain ManagementEmergency Services SettingsEventsFeatures: Announcement PlaylistFeatures: Announcement RepositoryFeatures: Auto AttendantFeatures: Call ParkFeatures: Call PickupFeatures: Call QueueFeatures: Call RecordingFeatures: Customer Experience EssentialsFeatures: Hunt GroupFeatures: Operating ModesFeatures: Paging GroupFeatures: Single Number ReachGroupsGuests ManagementHistorical AnalyticsHybrid ClustersHybrid ConnectorsIdentity OrganizationIssuesLicensesLocation Call SettingsLocation Call Settings: Call HandlingLocation Call Settings: SchedulesLocation Call Settings: VoicemailLocationsMeeting ChatsMeeting Closed CaptionsMeeting InviteesMeeting MessagesMeeting ParticipantsMeeting PollsMeeting PreferencesMeeting Q and AMeeting QualitiesMeeting TranscriptsMeetingsMeetings Summary ReportMembershipsMessagesNumbersOrganization ContactsOrganizationsPSTNPartner ManagementPartner Reports/TemplatesPartner TagsPeopleRecording ReportRecordingsReport TemplatesReportsReports: Detailed Call HistoryResource Group MembershipsResource GroupsRolesRoom TabsRoomsSCIM 2 BulkSCIM 2 GroupsSCIM 2 UsersSecurity Audit EventsSend Activation EmailSession TypesSettingsSiteSpace ClassificationsTeam MembershipsTeamsTracking CodesUCM ProfileUser Call SettingsVideo MeshVirtual Line Call SettingsWebhooksWholesale Billing ReportsWholesale ProvisioningWorkspace Call SettingsWorkspace LocationsWorkspace MetricsWorkspace PersonalizationWorkspacesxAPI
API Changelog
SDKs
Space Meetings Migration
Calling
Introduction
Platform
Web
IntroductionQuickstart
Basics
AuthorizationCore ConceptsCalls
Advanced Features
Call SettingsContactsSupplementary ServicesVoicemailBackground Noise Reduction
Kitchen Sink
Meetings
Introduction
Platform
Web
IntroductionQuickstart
Basics
AuthorizationJoin a MeetingMigration To Improved MeetingsPasswords & CaptchasUnified Space Meetings
Advanced Features
Advanced ControlsDialing In and OutStreams & EffectsVideo Resolution
Multistream
Multistream Comprehensive GuideMultistream Quickstart
Migrating SDK V2 to V3
iOSAndroidBrowserNode.jsClick to Call
Developer CommunityCertifications

SDKs

Web Meetings SDK | Migration to Improved Space Meetings

This guide provides an overview of the improved meeting experience associated with spaces and outlines the impacted areas, along with the necessary adjustments in these areas for the adoption of these improved flows.

anchorPre-requisites

anchor

Webex JS SDK version 2.60.0 or above.

anchorImproved meeting experience

anchor

Earlier, your experience in a meeting associated with a space was tied to who created the space (known as the meeting sponsor). The feature set available to you depended on the type of account that person had. We’ve removed the concept of meeting sponsorship. Now, only the host's license determines the meeting capabilities. Now, when you join or schedule a meeting in a space, you have access to the features you’ve come to enjoy in Webex Meetings. You can leverage this new experience in every meeting you schedule or join from here on in.

Please refer to this help article for additional details.

anchorMigration from Spark or Space meeting to the improved meetings experience

anchor

The initial stage of transitioning from Space or Spark (hereafter referred to as the classic meeting experience) to the improved meeting experience involves the management of user licenses as the host's license now determines the meeting capabilities.

  • Create a Webex site and re-distribute the licenses among users.
  • Create a Service App for end-to-end provisioning of users and other features.

As part of the improved experience with space meetings, creating a guest user through Guest Issuer is being deprecated. Now the way to create a guest user would be through a Service App tied to a guest site.

Users with a Webex account can acquire their access token from the developer portal by logging in with their authentication details (username and password).

For guest users, an access token can be obtained via a Service App.

anchorSDK Changes

anchor

Please adhere to the guidelines below to transition from utilizing roomId/spaceId to meetingId/sipUrl within the SDK.

Code Changes Required

The support for direct use of roomId/spaceId in Webex JS SDK and Meeting Widgets for creation and joining a meeting is being deprecated. You are encouraged to utilize the Meetings API to start an ad-hoc meeting. The Meetings API provides additional flexibility to developers. Once the meeting has been created using a licensed user or service-app, the Webex JS SDK can be utilized to join the meeting.

Before...

You'd use code like the following to create a Webex meeting using a specified room ID or space ID:

webex.meetings.create('room-id-or-space-id').then((meeting) => {
  console.log(meeting);
});
After...
  1. Create a meeting by calling the API https://webexapis.com/v1/meetings and obtain a meetingId or sipUrl.

    • Find the full details of the API here
    • Read through Integrations and Service Apps to use appropriate access tokens.
  2. Check if the improved meeting experience is enabled by checking the configuration of your webex object - webex.meetings.config.experimental.enableUnifiedMeetings. Toggle the improved meeting experience by setting the above flag to true if not already enabled

  3. Creating a Webex meeting using either a meeting ID or a SIP URL:

webex.meetings.create('meeting-id or sipUrl').then((meeting) => {
  console.log(meeting);
});

If a roomId/spaceId is specified as the meeting destination, the SDK will generate an error with the code and message below: Error Code - 30105 Error Message - 'Using the space ID as a destination is no longer supported. Please refer to the migration section in this document to use the meeting ID or SIP address.

Using personId to create a meeting is still supported. Please use the type as 'PERSON_ID'.

anchorJoin the Meeting by Entering a Password or Captcha

anchor

If the user is not part of the space where the meeting is created then the user will be prompted for the password. After multiple failed password attempts, captcha information is provided along with the appropriate error code. The user submits the captcha with the password to join the meeting successfully. For more information, see:

  • Meeting Verify Password
  • Password captcha flow

anchorMake another participant the host

anchor

A participant can be made a host using the transfer method within a meeting object. Only a host can make another participant host.

Use the following code to transfer host privileges to another participant.

meeting.transfer('participant-id');

Only an existing host can promote a participant to host.

anchorInvite another participant

anchor

A participant can be invited to the meeting using the invite method within the meeting object. Only a host can invite another participant. Participants can be invited using an email address.

Use the following code to invite another participant to an existing meeting. You can use either the emailAddress or the phoneNumber parameter.

meeting.invite(invitee: {
  emailAddress: 'johndoe@abc.com',
  phoneNumber: '1234',
});

To cancel an outgoing phone invite, use the following method.

meeting.cancelPhoneInvite(invitee: {
  phoneNumber: '1234',
});

anchorReclaim the host role

anchor

A participant can reclaim host privileges in the meeting by using the assignRoles method within the members object. The code snippet below illustrates its use.

  const selfId = meeting.members.selfId;
  const role = {
    type: 'MODERATOR',
    hasRole: true,
    hostKey,
  };

  meeting.members.assignRoles(selfId, [role])

anchorMeeting Widget changes

anchor

Please adhere to the guidelines below to transition from utilizing roomId/spaceId to meetingId/sipUrl within the Meetings Widget.

Before...

You'd use code like the following to create a Webex meeting widget using a specified room ID or space ID:

import { WebexMeetingsWidget } from '@webex/widgets';

import '@webex/widgets/dist/css/webex-widgets.css';

export default function App() {
  return (
    <WebexMeetingsWidget
      style={{ width: '1000px', height: '500px' }} // Substitute with any arbitrary size or use `className`
      accessToken='<ACCESS_TOKEN>'
      meetingDestination='<ROOM_ID>' // NOTICE THIS LINE
    />
  );
}
After...
  1. Use step-1 from SDK Changes to obtain meetingId or sipUrl.

  2. The code snippet below illustrates the process of creating a Webex meeting using either a meeting ID or a SIP URL:

import { WebexMeetingsWidget } from '@webex/widgets';

import '@webex/widgets/dist/css/webex-widgets.css';

export default function App() {
  return (
    <WebexMeetingsWidget
      style={{ width: '1000px', height: '500px' }} // Substitute with any arbitrary size or use `className`
      accessToken='<ACCESS_TOKEN>'
      meetingDestination='<MEETING_ID OR SIP_URL>' // NOTICE THIS LINE
    />
  );
}

If spaceId is passed for meetingDestination the widget will throw an error.

anchorSpace/Recent Widgets Changes

anchor

In this context, you cannot choose the ID for creating or joining a meeting, so we won't be addressing the deprecation of the roomId. Given that the improved meeting experience mandates a license for each user to participate in meetings, the meet button will be rendered inactive for users without a valid license.

Please refer to the initial section in this document to distribute licenses among users.

anchorLimitations

anchor
  • Limitations for consumer organization users. In the improved meeting experience associated with new spaces, Gmail users can initiate scheduled or instant meetings, while in the classic meeting experience, neither old nor new Gmail users can start scheduled or instant meetings.

  • Limitation in the Webex App: individuals not listed as invitees will be placed in the lobby and require admission.

In This Article
  • Pre-requisites
  • Improved meeting experience
  • Migration from Spark or Space meeting to the improved meetings experience
  • SDK Changes
  • Join the Meeting by Entering a Password or Captcha
  • Make another participant the host
  • Invite another participant
  • Reclaim the host role
  • Meeting Widget changes
  • Space/Recent Widgets Changes
  • Limitations

Connect

Support

Developer Community

Developer Events

Contact Sales

Handy Links

Webex Ambassadors

Webex App Hub

Resources

Open Source Bot Starter Kits

Download Webex

DevNet Learning Labs

Terms of Service

Privacy Policy

Cookie Policy

Trademarks

© 2025 Cisco and/or its affiliates. All rights reserved.