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

Embedded Apps

Embedded Apps Design and Experience Guidelines for Meetings

This document provides design and experience guidelines for embedded apps running in a Meeting, specifically:

  • Requirements that in-meeting embedded apps must meet to be approved for inclusion on Webex App Hub.
  • Recommended design guidelines that when implemented provide a great experience for users of in-meeting apps. While not explicitly required, apps that do not incorporate the recommended guidelines may not be approved if it is determined they provide a poor user experience.
  • Good-to-have design guidelines that when incorporated into in-meeting apps provide an enhanced user experience, both within the app itself and the larger Webex context.

Webex App Hub is not supported for Webex for Government (FedRAMP).

See Embedded Apps Design and Experience Guidelines for Messaging for guidelines related to messaging-based apps.

anchorRequirements for In-Meeting Embedded Apps

anchor

This section describes design and user experience requirements for in-meeting embedded apps.

  • Open For All User Experience
  • Responsive Layout
  • Platform and Device Support
  • Use of Pop-up Windows
  • Access to User Information
  • First-time User Experience
  • Legibility in Light and Dark Modes
  • Other

Open For All Experience

The ability to share content with meeting participants using the Open for All feature is the at the heart of the embedded app user experience. The following requirements are to ensure that an app's Open for All workflows are clear and intuitive to users.

  • Apps must be optimized for the two Open for All personas: the app initiator who starts the Open for All session, and the app recipients who interact with the opened app.

  • An app's primary use cases and workflows must provide the app initiator with the ability to start an Open for All session. Apps must not contain workflows that leaves the app initiator "stranded" and unable to start an Open for All session.

  • If an Open for All workflow involves multiple user steps, apps must provide clear and consistent navigation between steps. App initiators must be able to go back or forward in an Open for All workflow to select different content to share with app recipients.

  • If an app enables the Open for All button it must always provide the content that will be shared with app recipients. Open for All must not be used on Login Pages or other views where there is nothing for the app initiator to share.

  • While an Open for All session is in progress, app recipients must be presented with the same view or content that the app initiator intended to share. If the app recipient navigates away from the intended view, the app must provide a way for the user to return to the intended experience.

  • App recipient functionality and experience must be verified on Android and iOS devices. Recipients must be able to see and interact with the shared content.

Responsive Layout

In-meeting apps must optimize their layouts to their default viewports. As detailed below, there are unique viewport sizes for apps running in the App panel (where apps open by default) and in the external window that the user can pop out.

Embedded apps can be configured to open in either in the app panel, or the main meeting view.

  • App Panel
  • Main View
  • Pop Out Window
  • Mobile Devices
  • Scrolling Ability

App Panel

By default, apps are launched into the App panel with a viewport of 360x576px. Apps must be optimized for this viewport. Apps can optionally be configured to open in the main meeting view.

Default window size for in-meeting app

When the Open for all button is enabled the app's available viewport is 360x480px. Apps must be optimized for this smaller viewport.

Default window size when Open for all** is enabled

When Open for all is not enabled, app initiators and recipients can stretch the width of the App panel up to a maximum of 604x576px. Apps must be optimized for these dimensions.

Maximum stretched window size for in-meeting app

When Open for all is enabled the app's viewport is 604x480px. Apps must be optimized for these dimensions.

Maximum stretched window size for in-meeting app when Open for all** is enabled

Main View

In-meeting embedded apps have a Layout Preference configuration option that determines if shared content opens for meeting participants in the side panel or in the main meeting view at default size of 1264x490. Apps launched into the main view must be optimized for this viewport.

Main view

Pop Out Window

The user can click the expand icon in the app's title bar to pop out the app into a separate window at a default size of 720x510px. Apps must be optimized for this default window size. Users can resize the pop-out window to any size, so apps must be responsive to other viewport sizes, including full screen.

In-meeting default pop-out window size

Mobile Devices

For in-meeting apps, app recipients can view shared content on mobile devices. Apps must optimize their layouts for common mobile device screen sizes and orientations. (Users cannot initiate Open for all sessions on mobile devices.)

Example mobile device

Scrolling Ability

Apps must provide users with the ability to easily scroll the app's visible content. By default, in-meeting apps open in the App panel, which may contain other open panels (such as Chat or Participants panel, for example) thereby reducing the app's available screen area. For example, in the screenshot below the Slido app is open and is sharing the available space with other panels. Users must be able to access app content in this view by scrolling vertically.

Screenshot of many panels open in App panel, requiring user to scroll vertically

Platform and Device Support

Apps must be tested and verified to function as expected on all supported desktop systems and devices, including Windows and MacOS.

Apps that are intended to be used on Webex Devices (such as the DX80 or DeskPro) must be optimized for a touch-screen experience.

Use of Pop-up Windows

In general, apps should limit their use of pop-up windows created via JavaScript. In particular:

  • Pop-up windows created via the window.open() JavaScript method must not be used for primary app workflows or experiences.

  • Use of pop-ups must be limited to entering sign-in credentials, or displaying error messages or notification messages, only. Pop-up windows must be closed once the user has completed the sign-in process or acknowledged the notification or error message.

Access to User Information
  • Apps must not require a user to provide a phone number to enable use of the app. If the app solicits personal information from the user, it must not spam users with that information.
  • Apps must not be dependent on access to a user's personally identifiable information (PII) to function properly. By default, access to PII in embedded apps is not enabled and apps must be able to function without access to PII. For more information, see Access to Personally Identifying Information.
  • Embedded apps may obtain user information via an Integration with Webex APIs, but integrations should limit the requested scopes to the minimum their application needs to function. For more information, see Combined Webex Developer Solutions in the Embedded Apps Developer Guide.

First-time User Experience

The following are requirements for the first-time user experience.

  • Apps must be easy and intuitive for first-time users and provide clear call-to-actions (CTAs) in onboarding workflows.
  • If a user is required to sign-in to use the app, all available sign-in methods in the app must be functional.
  • If the user needs to first sign-up (create an external account) before using the app, the app must provide guidance on how users need to complete that process.

Legibility in Light and Dark Modes

The Webex app provides users the option to enable dark or light mode for the user interface. All embedded app text and content must be visible, legible, and actionable in both color modes. In particular, apps must not have transparent backgrounds, which can make text illegible in dark mode.

Other
  • If an app encounters an error condition that it cannot recover from, it must provide users with graceful exit points and appropriate messaging about the error state.
  • Apps that require a user to sign-in must also provide a way for the user to sign-out.
  • Apps must not display advertisements. This requirement is evaluated on a per-app basis and depends on the situation (for example, if an app's underlying business model is dependent on ads).
  • Apps must not include links to extraneous pages where not actionable (for example, links to "About", "Careers", or social media sites) that would leave the user "stranded".

anchorRecommended Design Guidelines

anchor

Embedded apps are expected to follow the recommended design guidelines discussed below. While not required for approval, apps that do not incorporate these recommended guidelines may not be approved for App Hub if the reviewer determines that the app provides a poor user experience.

Except where noted, the recommended design guidelines apply to both in-meeting and in-space apps.

  • Open For All Experience Recommendations
  • Focus on Simplified Workflows and Use Cases
  • Respond to User's Color Theme Preference
  • Sign-in Guidelines

Open For All Experience Recommendations

The following are recommendations for the Open For All experience:

  • The meeting host doesn't necessarily need to be the app initiator in a meeting. Unless an app's use cases don't allow for it, it's recommended that all meeting participants be able to start an Open For All session.
  • Apps should avoid including hyperlinks to parts of the application that weren't intended to be part of the embedded app experience, or take the user to an unknown part of the app.
  • If certain Open For All workflows are not enabled in the app, the developer should minimally provide the user with next steps through a text banner.

Focus on Simplified Workflows and Use Cases

Developers should not try to repurpose or replicate their entire existing web app as an embedded app. Embedded apps benefit users with simplified use cases and workflows that add value to a Webex meeting or messaging space.

Respond to User's Color Theme Preference

Webex users can select a light or dark theme for the Webex or Meeting Center app. To provide the best user experience, embedded apps should be responsive to the user's theme preference and provide both light and dark color themes. Minimally, an app's light theme should provide dark-colored text on a light-colored background, while the dark them should display light-colored text on a dark-colored background.

Slido app adpating to light and dark color themes in Webex app

Sign-in Guidelines

Apps that require user accounts should make the sign-up and sign-in processes as easy as possible for the user. Specifically, apps should incorporate the following:

  • App recipients should have the same or similar sign-up and sign-in experience as the app initiator.
  • Apps should use cookies and local storage to persist a user's log-in information, so that users do not need to log in each time they open a space tab or join an Open For All session. The embedded app version of your service or application should provide the same sign-in or session persistence as the browser-based version. See Using Cookies and Web Storage in the Embedded Apps developer guide for more information.
  • Apps should use third-party identity providers for user sign-in only when necessary.

anchorGood-to-Have Design Guidelines

anchor

The following suggestions provide an enhanced user experience both within your app and in the larger Webex context. Incorporating these suggestions is optional and will not block app approval if not implemented.

Provide a "Freemium" Model for First-time Users

Apps that require users to create an account and select a pricing plan should provide a "freemium" model to allow first-time users an easy sign-up experience. Apps can use the participant's user ID to create a placeholder association between the user and the current app session. This ID is guaranteed to be unique regardless of whether the app has access to the user's personally identifiable information (PII).

In This Article
  • Requirements for In-Meeting Embedded Apps
  • Recommended Design Guidelines
  • Good-to-Have Design Guidelines

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.