UI Legal Notices

Important

At Zoom, it’s crucial that we are transparent about how a user’s data is shared when they use certain features in Zoom meetings. In order to provide this transparency and fulfill our regulatory obligations, we require that you incorporate certain Zoom Legal Notices in your app. These notices are mandatory; if you don’t include them, we reserve the right to suspend your access to the Zoom Meeting SDKs.

This guide goes over the Zoom Legal Notices and how to display them in your app using the SDK. This only applies to the Meeting SDKs for Android, iOS, macOS, Windows, and Electron.

Calling sequence

This is the SDK calling sequence, using Android as an example:

  • First call the isXYZLegalNoticeAvailable() interface when you are displaying the custom UI widget for the Zoom meeting feature where a legal notice is required. isXYZLegalNoticAvailable() will check whether the corresponding feature is being used, for example, the legal notice annotation when the SDK is using annotation feature. If the current state is not using annotation, this interface will return false.

  • If the call returns true, then call getXYZLegalNoticesPrompt() next to retrieve the internationalized string for the notice prompt, for example, “Who can see your questions?”

  • When the user clicks on the prompt, call getXYZLegalNoticesExplained() to display the full content of the tooltip for the specific zoom feature the user is using.

Use cases

The SDK includes legal notices for:

Use cases for these features are described in detail below. See the Disclaimer Notice UI Design Guidelines for design details.

Active Apps Notifier (AAN) Use case

The Active Apps Notifier provides a notice to meeting and webinar participants when a host or other participant is using an app that accesses meeting or webinar content, such as video, audio, chat, and/or meeting files during a meeting.

See Active Apps Notifier in the Zoom Help Center for more details.

The Active Apps Notifier MUST appear in the top-left corner of the meeting window.

Clicking the Active Apps Notifier icon during a meeting or webinar displays the name of all 3rd-party apps, integrations, and/or services that are currently accessing meeting or webinar content, the type of content the app has access to, and which participant(s) approved the app for their own use in the meeting or webinar.

Clicking any listed app opens the respective Marketplace page for that integration for more information about that app.

See the Active Apps Notifier use case at the bottom of this page for details on how to integrate it into your app using the Zoom Meeting SDK for each platform.


Q&A

Notice

Who can see your questions?

When to display

When a host launches a Q&A, the webinar participant should see this notice in the Q&A widget. The contents of the tooltip displayed when a participant clicks on this notice will vary based on whether the Q&A is public, standard (i.e. questions only visible to the account owner, hosts, and panelists), or anonymous.

Related SDK Methods

Android

- boolean isQALegalNoticeAvailable()
- String getQALegalNoticesPrompt()
- String getQALegalNoticesExplained()

iOS

- (BOOL)isQALegalNoticeAvailable;
- (NSString *_Nullable)getQALegalNoticesPrompt;
- (NSString *_Nullable)getQALegalNoticesExplained;

Windows

virtual bool IsQALegalNoticeAvailable() = 0;
virtual const wchar_t* getQALegalNoticesPrompt() = 0;
virtual const wchar_t* getQALegalNoticesExplained() = 0;

macOS

- (NSString *)getQALegalNoticesPrompt;
- (NSString *)getQALegalNoticesExplained;
- (BOOL)isQALegalNoticeAvailable;" 

Notice Style

Persistent disclaimer notice (with Disclaimer Notice icon) docked at the bottom of the Q&A widget.

Legal Notice Copy

Standard

The account owner, host, and panelists will be able to see who you are, your contact information (if you’re logged in or you provided it), and your question — and can share them with apps and others.

If your question is selected, it will be visible to all attendees.

Standard with option to submit question anonymously

Unless you submit anonymously, the account owner, host, and panelists will be able to see who you are, your contact information (if you’re logged in or you provided it), and your question — and can share them with apps and others.

If your question is selected, it will be visible to all attendees.

Public

This Q&A is public, so everyone can see your questions.

The account owner, host, and panelists will be able to see who you are, your contact information (if you’re logged in or you provided it), and your question — and can share them with apps and others.

Public with option to submit question anonymously

This Q&A is public, so everyone can see your questions.

The account owner, host, and panelists will be able to see who you are, your contact information (if you’re logged in or you provided it), and your question — and can share them with apps and others.

If you submit your questions anonymously, nobody can see who submitted your questions.

Example


In-Meeting Chat

Notice

Who can see your messages?

When to display

This notice appears in the chat box when a participant initiates the chat feature.

Related SDK Methods

Android

- boolean isMeetingChatLegalNoticeAvailable()
- String getChatLegalNoticesPrompt()
- String getChatLegalNoticesExplained()        

iOS

- (BOOL)isMeetingChatLegalNoticeAvailable;
- (NSString *_Nullable)getChatLegalNoticesPrompt;
- (NSString *_Nullable)getChatLegalNoticesExplained;

Windows

virtual bool IsMeetingChatLegalNoticeAvailable() = 0;
virtual const wchar_t* getChatLegalNoticesPrompt() = 0;
virtual const wchar_t* getChatLegalNoticesExplained() = 0;

macOS

- (BOOL)isMeetingChatLegalNoticeAvailable;
- (NSString *)getChatLegalNoticesPrompt;
- (NSString *)getChatLegalNoticesExplained;

Notice Style

Persistent disclaimer notice (with Disclaimer Notice icon) stacked over the chat text field in the chat module.

Legal Notice Copy

Everyone in the meeting can see and save your messages with Everyone — and can share them with apps and others.

Only you and those you chat with can save your direct messages and share them with apps and others.

Example


Archivable Meeting Chat

Notice

Who can see your messages?
Archiving On

When to display

This notice appears in the chat box when a participant initiates the chat feature and the host has turned on the archiving option.

Related SDK Methods

Android

- boolean isMeetingChatLegalNoticeAvailable()
- String getChatLegalNoticesPrompt()
- String getChatLegalNoticesExplained()        

iOS

- (BOOL)isMeetingChatLegalNoticeAvailable;
- (NSString *_Nullable)getChatLegalNoticesPrompt;
- (NSString *_Nullable)getChatLegalNoticesExplained;

Windows

virtual bool IsMeetingChatLegalNoticeAvailable() = 0;
virtual const wchar_t* getChatLegalNoticesPrompt() = 0;
virtual const wchar_t* getChatLegalNoticesExplained() = 0;

macOS

- (BOOL)isMeetingChatLegalNoticeAvailable;
- (NSString *)getChatLegalNoticesPrompt;
- (NSString *)getChatLegalNoticesExplained;

Notice Style

Persistent disclaimer notice (with Disclaimer Notice icon) stacked over the chat text field in the chat module.

Legal Notice Copy

Archiving is on, so the account owner can see all your messages — including your direct messages — and share them with apps and others.

Everyone in the meeting can save and share the messages you send to Everyone.

Example


Recorded Meeting Chat

Notice

Who can see your messages?
Recording On

When to display

This notice appears in the chat box when a participant initiates the chat feature and the meeting is being recorded.

Related SDK Methods

Android

- boolean isMeetingChatLegalNoticeAvailable()
- String getChatLegalNoticesPrompt()
- String getChatLegalNoticesExplained()        

iOS

- (BOOL)isMeetingChatLegalNoticeAvailable;
- (NSString *_Nullable)getChatLegalNoticesPrompt;
- (NSString *_Nullable)getChatLegalNoticesExplained;

Windows

virtual bool IsMeetingChatLegalNoticeAvailable() = 0;
virtual const wchar_t* getChatLegalNoticesPrompt() = 0;
virtual const wchar_t* getChatLegalNoticesExplained() = 0;

macOS

- (BOOL)isMeetingChatLegalNoticeAvailable;
- (NSString *)getChatLegalNoticesPrompt;
- (NSString *)getChatLegalNoticesExplained;

Notice Style

Persistent disclaimer notice (with Disclaimer Notice icon) stacked over the chat text field in the chat module.

Legal Notice Copy

Recording is on, so the account owner and everyone in the meeting can see and save messages sent to Everyone — and can share them with apps and others.

Only you and those you chat with can save your direct messages and share them with apps and others.

Example


Whiteboard/Screen share

Notice

Who can see what you share here?

When to display

This notice is displayed in the ‘Whiteboard’ option of the ‘Share screen’ feature.

Related SDK Methods

Android

- boolean isWhiteboardLegalNoticeAvailable()
- String getWhiteboardLegalNoticesPrompt()
- String getWhiteboardLegalNoticesExplained()

iOS

- (BOOL)isWhiteboardLegalNoticeAvailable;
- (NSString *_Nullable)getWhiteboardLegalNoticesPrompt;
- (NSString *_Nullable)getWhiteboardLegalNoticesExplained;

Windows

virtual bool IsWhiteboardLegalNoticeAvailable() = 0;
virtual const wchar_t* getWhiteboardLegalNoticesPrompt() = 0;
virtual const wchar_t* getWhiteboardLegalNoticesExplained() = 0;

macOS

- (BOOL)isWhiteboardLegalNoticeAvailable;
- (NSString *)getWhiteboardLegalNoticesPrompt;
- (NSString *)getWhiteboardLegalNoticesExplained;

Notice Style

Persistent disclaimer notice (with Disclaimer Notice icon) docked underneath the whiteboard toolbar.

Legal Notice Copy

Everyone in the meeting can save the things you share here — and share them with apps and others.

Example


Whiteboard/Screen share recording on

Notice

Who can see what you share here?
Recording On

When to display

This notice is displayed in the ‘Whiteboard’ option of the ‘Share screen’ feature when the meeting is being recorded. The text displayed in the tooltip varies based on whether the meeting is recorded locally or to the cloud.

Related SDK Methods

Android

- boolean isWhiteboardLegalNoticeAvailable()
- String getWhiteboardLegalNoticesPrompt()
- String getWhiteboardLegalNoticesExplained()

iOS

- (BOOL)isWhiteboardLegalNoticeAvailable;
- (NSString *_Nullable)getWhiteboardLegalNoticesPrompt;
- (NSString *_Nullable)getWhiteboardLegalNoticesExplained;

Windows

virtual bool IsWhiteboardLegalNoticeAvailable() = 0;
virtual const wchar_t* getWhiteboardLegalNoticesPrompt() = 0;
virtual const wchar_t* getWhiteboardLegalNoticesExplained() = 0;

macOS

- (BOOL)isWhiteboardLegalNoticeAvailable;
- (NSString *)getWhiteboardLegalNoticesPrompt;
- (NSString *)getWhiteboardLegalNoticesExplained;

Notice Style

Persistent disclaimer notice (with Disclaimer Notice icon) docked underneath the whiteboard toolbar.

Legal Notice Copy

Cloud recording

Recording is on, so the account owner and everyone in the meeting can save the things you share here — and can share them with apps and others.

Local recording

Recording is on, so everyone in the meeting can save the things you share here — and can share them with apps and others.


Live transcription enabled

Notice

Live transcription has been enabled. Who can see this transcript?

When to display

This notice is displayed when live transcription has been enabled.

Related SDK Methods

Android

- boolean isLiveTranscriptLegalNoticeAvailable()
- String getLiveTranscriptLegalNoticesPrompt()
- String getLiveTranscriptLegalNoticesExplained()

iOS

- (BOOL)isLiveTranscriptLegalNoticeAvailable;
- (NSString *_Nullable)getLiveTranscriptLegalNoticesPrompt;
- (NSString *_Nullable)getLiveTranscriptLegalNoticesExplained;

Windows

virtual bool IsLiveTranscriptLegalNoticeAvailable() = 0;
virtual const wchar_t* getLiveTranscriptLegalNoticesPrompt() = 0;
virtual const wchar_t* getLiveTranscriptLegalNoticesExplained() = 0;

macOS

- (BOOL)isLiveTranscriptLegalNoticeAvailable;
- (NSString *)getLiveTranscriptLegalNoticesPrompt;
- (NSString *)getLiveTranscriptLegalNoticesExplained;

Notice Style

Disclaimer notice (with Disclaimer Notice icon) embedded in dismissible floating alert.

Legal Notice Copy

The account owner and everyone in the meeting can save this transcript and share it with apps and others.

Example


Webinar/Meeting registration

Notice

Information you provide when registering will be shared with the event host and can be used and shared by them in accordance with their Terms and Privacy Policy.

When to display

This notice is displayed on the form that the participant uses to input their data and register for a meeting or webinar.

Related SDK Methods

Android

- String getWebinarRegistrationLegalNoticesPrompt()
- WebinarRegistLegalNoticeContent getWebinarRegistrationLegalNoticesExplained()

iOS

- (NSString *_Nullable)getWebinarRegistrationLegalNoticesPrompt;
- (MobileRTCWebinarRegistLegalNoticeContent *_Nullable)getWebinarRegistrationLegalNoticesExplained;

Windows

virtual const wchar_t* getWebinalLegalNoticesPrompt() = 0;
virtual bool getWebinalLegalNoticesExplained(WebinarLagelNoticesExplainedInfo& explained_info) = 0;

macOS

- (NSString *)getWebinarRegistrationLegalNoticesPrompt;
- (ZoomSDKWebinarRegistrationExplainInfo *)getWebinarRegistrationLegalNoticesExplained;

Notice Style

Grey text above the ‘Register’ button on the Webinar and Meeting registration forms. The links should go to the developer’s Terms of Use or Privacy Policy as appropriate.

Legal Notice Copy

N/A (not a tooltip)


Disclaimer Notice UI Design Guidelines

See the design guidelines below.


Active Apps Notifier (AAN)

Related SDK methods

Android

InMeetingAANController getInMeetingAANController()
- MobileRTCSDKError showAANPanel(FragmentActivity activity)
- MobileRTCSDKError hideAANPanel()

iOS

- (MobileRTCANNError)showAANPanelInView:(UIView *_Nullable)containerView originPoint:(CGPoint)originXY;
- (MobileRTCANNError)hideAANPanel;

Windows

virtual SDKError ShowAANPanel(unsigned int x, unsigned int y) = 0;
virtual SDKError HideAANPanel() = 0;

macOS

- (ZoomSDKError)showAANPanel:(NSPoint)point parentWindow:(NSWindow*)parentWindow;
- (ZoomSDKError)hideAANPanel;

SDK workflow

  1. Call the GetMeetingAANController while in a meeting with Custom UI enabled to get the AAN controller.

  2. You must display the Active Apps Notifier icon in your meeting UI.

  3. If the user clicks the Active Apps Notifier icon, call the ShowAANPanel() interface to show the AAN notification UI panel. Whenver you call this interface, the SDK will receive the latest AAN information.

  4. If the user indicates to your app that they want to dismiss the AAN panel, call the hideAANPanel() interface to hide it.

Active Apps Notifier icon

It’s your responsibility to render this icon in your custom UI implementation.

AAN icon
AAN icon

Active Apps Notifier panel

The AAN panel should display when the user clicks the AAN icon.

AAN panel
AAN panel