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 TranscriptsMeetings
POSTCreate a Meeting
GETGet a Meeting
GETList Meetings
PATCHPatch a Meeting
PUTUpdate a Meeting
DELETEDelete a Meeting
POSTJoin a Meeting
GETList Meeting Templates
GETGet a Meeting Template
GETGet Meeting Control Status
PUTUpdate Meeting Control Status
GETList Meeting Session Types
GETGet a Meeting Session Type
GETGet registration form for a meeting
PUTUpdate Meeting Registration Form
DELETEDelete Meeting Registration Form
POSTRegister a Meeting Registrant
POSTBatch register Meeting Registrants
GETGet Detailed Information for a Meeting Registrant
GETList Meeting Registrants
POSTQuery Meeting Registrants
POSTBatch Update Meeting Registrants status
DELETEDelete a Meeting Registrant
PUTUpdate Meeting Simultaneous interpretation
POSTCreate a Meeting Interpreter
GETGet a Meeting Interpreter
GETList Meeting Interpreters
PUTUpdate a Meeting Interpreter
DELETEDelete a Meeting Interpreter
GETList Meeting Breakout Sessions
PUTUpdate Meeting Breakout Sessions
DELETEDelete Meeting Breakout Sessions
GETGet a Meeting Survey
GETList Meeting Survey Results
POSTGet Meeting Survey Links
POSTCreate Invitation Sources
GETList Invitation Sources
GETList Meeting Tracking Codes
POSTReassign Meetings to a New Host
Meetings 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 TranscriptsMeetings
POSTCreate a Meeting
GETGet a Meeting
GETList Meetings
PATCHPatch a Meeting
PUTUpdate a Meeting
DELETEDelete a Meeting
POSTJoin a Meeting
GETList Meeting Templates
GETGet a Meeting Template
GETGet Meeting Control Status
PUTUpdate Meeting Control Status
GETList Meeting Session Types
GETGet a Meeting Session Type
GETGet registration form for a meeting
PUTUpdate Meeting Registration Form
DELETEDelete Meeting Registration Form
POSTRegister a Meeting Registrant
POSTBatch register Meeting Registrants
GETGet Detailed Information for a Meeting Registrant
GETList Meeting Registrants
POSTQuery Meeting Registrants
POSTBatch Update Meeting Registrants status
DELETEDelete a Meeting Registrant
PUTUpdate Meeting Simultaneous interpretation
POSTCreate a Meeting Interpreter
GETGet a Meeting Interpreter
GETList Meeting Interpreters
PUTUpdate a Meeting Interpreter
DELETEDelete a Meeting Interpreter
GETList Meeting Breakout Sessions
PUTUpdate Meeting Breakout Sessions
DELETEDelete Meeting Breakout Sessions
GETGet a Meeting Survey
GETList Meeting Survey Results
POSTGet Meeting Survey Links
POSTCreate Invitation Sources
GETList Invitation Sources
GETList Meeting Tracking Codes
POSTReassign Meetings to a New Host
Meetings 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

Join a Meeting

Retrieves links for a meeting with a specified meetingId, meetingNumber, or webLink that allow users to start or join the meeting directly without logging in and entering a password.

  • Please note that meetingId, meetingNumber and webLink are mutually exclusive and they cannot be specified simultaneously.

  • If joinDirectly is true or not specified, the response will have HTTP response code 302 and the request will be redirected to joinLink; otherwise, the response will have HTTP response code 200 and joinLink will be returned in response body.

  • Only the meeting host or cohost can generate the startLink.

  • An admin user or a Service App can generate the startLink and joinLink on behalf of another meeting host using the hostEmail parameter. When a Service App generates the startLink and joinLink, the hostEmail parameter is required. The hostEmail parameter only applies to meetings, not webinars.

  • For Service Apps, hostEmail must be provided in the request.

  • Generating a join link or a start link before the time specified by joinBeforeHostMinutes for a webinar is not supported.

  • The joinLink and startLink generated by the API only work in a web browser, not in mobile apps. When the joinLink or startLink is used in a mobile app, the user can't join or start the meeting directly by the dial-in or dial-out phone numbers displayed in the app.

  • When createJoinLinkAsWebLink or createStartLinkAsWebLink is set to true, a user cannot join or start the meeting using the joinLink or startLink returned in the response, and must complete the login flow. Those options are typically useful if mandatory user login is configured in Control Hub.

  • Embedded Apps are not supported in a meeting which is started from the startLink generated by this API.

When the email or displayName is omitted from the API request, the backend inserts the data from the user making the request. That may lead to situations where an attendee is shown in the roster with the hostname which should be avoided. In the future, we will make those two fields required.

POST/v1/meetings/join
Body Parameters
meetingId
string

Unique identifier for the meeting. This parameter applies to meeting series and scheduled meetings. It doesn't apply to ended or in-progress meeting instances. Please note that currently meeting ID of a scheduled personal room meeting is also supported for this API.

meetingNumber
string

Meeting number. Applies to meeting series, scheduled meeting, and meeting instances, but not to meeting instances which have ended.

webLink
string

Link to a meeting information page where the meeting client is launched if the meeting is ready to start or join.

joinDirectly
boolean

Whether or not to redirect to joinLink. It is an optional field and default value is true.

email
string

Email address of meeting participant. If email is specified, the link is generated for the user of email; otherwise, the API returns the link for the user calling the API. email is required for a guest issuer.

displayName
string

Display name of meeting participant. If displayName is specified, email must be specified as well. If email is specified and displayName is not, display name is the same as email. If neither displayName nor email is specified, the API returns the link for the user calling the API. The maximum length of displayName is 128 characters. displayName is required for a guest issuer.

password
string

Required when the meeting is protected by a password and the current user is not privileged to view it if they are not a host, cohost, or invitee.

expirationMinutes
number

Expiration duration of joinLink in minutes. Must be between 1 and 60.

registrationId
string

Required when the meeting is webinar-enabled and enabled registration ID.

hostEmail
string

Email address for the meeting host. This attribute should be set if the user or application calling the API has the admin on-behalf-of scopes. This parameter is required for a Service App. It only applies to meetings, not webinars.

createJoinLinkAsWebLink
boolean

When createJoinLinkAsWebLink is true, the returned joinLink is the webLink of the meeting, otherwise, the normal joinLink is returned. This parameter is applicable when the option to force the user to log in is set in Control Hub. When true, a user cannot join the meeting by the link directly and must go through the login flow.

createStartLinkAsWebLink
boolean

When createStartLinkAsWebLink is true, the returned startLink is the webLink of the meeting, otherwise, the normal startLink is returned. This parameter is applicable when the option to force the user to log in is set in Control Hub. When true, a user cannot start the meeting using the link and must go through the login flow.

Response Properties
startLink
string

The link is used to start a meeting as the meeting host. Only the meeting host or cohost can generate the startLink.

joinLink
string

The link is used to join the meeting.

expiration
string

Expiration time of joinLink. When both createJoinLinkAsWebLink and createStartLinkAsWebLink are true, this attribute is not returned in the response.

Response Codes

The list below describes the common success and error responses you should expect from the API:

CodeStatusDescription
200OKSuccessful request with body content.
201CreatedThe request has succeeded and has led to the creation of a resource.
202AcceptedThe request has been accepted for processing.
204No ContentSuccessful request without body content.
400Bad RequestThe request was invalid or cannot be otherwise served. An accompanying error message will explain further.
401UnauthorizedAuthentication credentials were missing or incorrect.
403ForbiddenThe request is understood, but it has been refused or access is not allowed.
404Not FoundThe URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method.
405Method Not AllowedThe request was made to a resource using an HTTP request method that is not supported.
409ConflictThe request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once.
410GoneThe requested resource is no longer available.
415Unsupported Media TypeThe request was made to a resource without specifying a media type or used a media type that is not supported.
423LockedThe requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again.
428Precondition RequiredFile(s) cannot be scanned for malware and need to be force downloaded.
429Too Many RequestsToo many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made.
500Internal Server ErrorSomething went wrong on the server. If the issue persists, feel free to contact the Webex Developer Support team.
502Bad GatewayThe server received an invalid response from an upstream server while processing the request. Try again later.
503Service UnavailableServer is overloaded with requests. Try again later.
504Gateway TimeoutAn upstream server failed to respond on time. If your query uses max parameter, please try to reduce it.
  • Try it
  • Example
POST
/v1/meetings/join
Log in to try the API.
Header
Body
  • Unique identifier for the meeting. This parameter applies to meeting series and scheduled meetings. It doesn't apply to ended or in-progress meeting instances. Please note that currently meeting ID of a scheduled [personal room](https://help.webex.com/en-us/article/nul0wut/Webex-Personal-Rooms-in-Webex-Meetings) meeting is also supported for this API.
  • Meeting number. Applies to meeting series, scheduled meeting, and meeting instances, but not to meeting instances which have ended.
  • Link to a meeting information page where the meeting client is launched if the meeting is ready to start or join.
  • Whether or not to redirect to `joinLink`. It is an optional field and default value is true.
  • Email address of meeting participant. If `email` is specified, the link is generated for the user of `email`; otherwise, the API returns the link for the user calling the API. `email` is required for a [guest issuer](https://developer.webex.com/docs/guest-issuer).
  • Display name of meeting participant. If `displayName` is specified, `email` must be specified as well. If `email` is specified and `displayName` is not, display name is the same as `email`. If neither `displayName` nor `email` is specified, the API returns the link for the user calling the API. The maximum length of `displayName` is 128 characters. `displayName` is required for a [guest issuer](https://developer.webex.com/docs/guest-issuer).
  • Required when the meeting is protected by a password and the current user is not privileged to view it if they are not a host, cohost, or invitee.
  • Expiration duration of `joinLink` in minutes. Must be between 1 and 60.
  • Required when the meeting is webinar-enabled and enabled registration ID.
  • Email address for the meeting host. This attribute should be set if the user or application calling the API has the admin on-behalf-of scopes. This parameter is required for a [Service App](/docs/service-apps). It only applies to meetings, not webinars.
  • When `createJoinLinkAsWebLink` is true, the returned `joinLink` is the webLink of the meeting, otherwise, the normal `joinLink` is returned. This parameter is applicable when the option to force the user to log in is set in Control Hub. When true, a user cannot join the meeting by the link directly and must go through the login flow.
  • When `createStartLinkAsWebLink` is true, the returned `startLink` is the webLink of the meeting, otherwise, the normal `startLink` is returned. This parameter is applicable when the option to force the user to log in is set in Control Hub. When true, a user cannot start the meeting using the link and must go through the login flow.
  • Request
  • Response
{
    "meetingId":"98d8c2212c9d62b162b9565932735e58_I_231409844992607809",
    "meetingNumber":"123456789",
    "webLink": "https://site4-example.webex.com/site4/j.php?MTID=md41817da6a55b0925530cb88b3577b1e",
    "joinDirectly":false,
    "email": "brenda.song@example.com",
    "displayName": "Brenda Song",
    "password": "BgJep@43",
    "expirationMinutes": 5,
    "hostEmail": "john.andersen@example.com",
    "createJoinLinkAsWebLink": false,
    "createStartLinkAsWebLink": false
}
200 / OK
{
    "startLink": "https://convergedint.dmz.webex.com/wbxmjs/joinservice/sites/convergedint/meeting/download/b711f29256e54ed780f2a1b7f96d202f?siteurl=convergedint&integrationJoinToken=QUhTSwAAAIXWmx57bQgiYLuAYZvEKAN6taYj3h2th5jIusReBmnOZBLmjPHQIhknV9%2FVOtZTRfvHek%2FbN%2BUA3CcmfqiYEisTZyWhIWboxRG3KGzVQxijZV0z%2B%2FTdXqgX3Cvo%2B3FfO3tIgh1dcP5bprqYxuwJu%2BhW13nctAZPsLuyLaCuADQ%2FsQ%3D%3D&principal=QUhTSwAAAIUNvqV715wdKSiJfpQz9G2uUjyNlBeu0bcNYoXwvYPyHeysQAgve3XrsM83KS10rU34VjuJjPyOi225Po2n3q2MTUmMgIk9hgkDXHxO476xlMoDPsQONMp8vBY9uVybKgBOyTkJsMa%2F2pFES4hk101q&integrationEndUrl=https%3A%2F%2Fconvergedint.dmz.webex.com%2Fmc3300%2Fmeetingcenter%2Fmeetingend%2Fmeetingend.do%3Fsiteurl%3Dconvergedint%26from%3Dmeeting%26backurl%3D",
    "joinLink": "https://convergedint.dmz.webex.com/wbxmjs/joinservice/sites/convergedint/meeting/download/b711f29256e54ed780f2a1b7f96d202f?siteurl=convergedint&integrationJoinToken=QUhTSwAAAIXWmx57bQgiYLuAYZvEKAN6taYj3h2th5jIusReBmnOZBLmjPHQIhknV9%2FVOtZTRfvHek%2FbN%2BUA3CcmfqiYEisTZyWhIWboxRG3KGzVQxijZV0z%2B%2FTdXqgX3Cvo%2B3FfO3tIgh1dcP5bprqYxuwJu%2BhW13nctAZPsLuyLaCuADQ%2FsQ%3D%3D&principal=QUhTSwAAAIUNvqV715wdKSiJfpQz9G2uUjyNlBeu0bcNYoXwvYPyHeysQAgve3XrsM83KS10rU34VjuJjPyOi225Po2n3q2MTUmMgIk9hgkDXHxO476xlMoDPsQONMp8vBY9uVybKgBOyTkJsMa%2F2pFES4hk101q&integrationEndUrl=https%3A%2F%2Fconvergedint.dmz.webex.com%2Fmc3300%2Fmeetingcenter%2Fmeetingend%2Fmeetingend.do%3Fsiteurl%3Dconvergedint%26from%3Dmeeting%26backurl%3D",
    "expiration": "2022-05-30T09:44:08Z"
}

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.