Query parameters configure a meeting room directly from its URL. They let you control an embedded meeting room without writing any code, which is especially useful when you place the room in an iFrame in your own application.
Append them to a meeting URL:
https://<DOMAIN-NAME>/meeting/<MEETING-ID>?participantName=Test%20User&meetingPassword=1234Values must be URL-encoded. Otherwise, a name containing a space, an email address, or anything with & or = in it breaks the rest of the URL.
Boolean parameters take the literal strings true and false.
If you are using an AI coding assistant, copy the text below into it and add a sentence describing what you want to build. AI assistants accessing this page receive a separate, token-optimized version of our full developer documentation, specifically tailored by our engineers for AI coding assistants.
Before writing any code, read this page:
https://www.veeting.com/en/developer-documentation/query-parameters
It documents the URL query parameters of a Veeting Rooms meeting room.
Keep these five rules in mind:
1. URL encode every value. Names and email addresses usually contain
characters that need it.
2. Booleans are the literal strings "true" and "false". Not 1 or yes.
3. Parameter names are identifiers. Never translate them, whatever
language the surrounding page is in.
4. The platform strips tokens and personal data out of the URL, so do
not read them back from window.location later. Keep them in the
application instead.
5. Only use parameters that appear on that page. Do not invent one and
do not use one you found by reading our JavaScript bundle.
What I want to build:The platform removes some parameters from the URL. Anything that carries a token or personal data is stripped, either immediately or before the browser navigates. That is deliberate: those values then do not persist in browser history, in a bookmark, or in a Referer header. The lists are at the end of this page, and they matter if you expect to read a parameter back out of the address bar later.
Not every parameter the platform accepts is listed here. The others are internal, serve support tooling, or carry meeting access tokens that we do not describe publicly. If you need one that is not documented, ask us rather than relying on one you found by reading the bundle: an undocumented parameter carries no compatibility promise.
These parameters pre-fill the "Join Meeting" screen so the participant does not have to type the values.
| Parameter | Possible values | Default | Description |
|---|---|---|---|
| culture | Language or locale code | the browser's language | The interface language. Use either a bare language code, such as de, or a locale, such as de-CH or es-LA. A bare code resolves to your instance's regional variant, so de becomes de-CH. The setting applies only if your instance offers that language. If it does not, the room uses the participant's browser language; if the instance offers none of those languages, it uses its own default language. Supplying culture also overrides a language the participant chose on an earlier visit. |
| participantName | Any string | empty | The participant's name. Required if skipJoinMeetingScreen is true. |
| participantEmail | Any email address | empty | The participant's email address. |
| meetingPassword | Any string | empty | The meeting password. |
| registerEmail | Any email address | empty | Only relevant if "Free Trial Registration" is enabled. Pre-fills the email field of the trial registration form. |
| registerFrom | Any string | empty | Only relevant if "Free Trial Registration" is enabled. Adds a "from" field to the notification sent to the system administrator, which helps you track the source. |
| Parameter | Possible values | Default | Description |
|---|---|---|---|
| moderatorToken | Valid moderator token | empty | Gives the participant moderator rights in the meeting. |
| jwtToken | Any JWT token | empty | A user's authentication token. Useful when authentication happens in a third-party tool. |
| meetingAccessToken | Valid access token | empty | The access token for a specific meeting. Required if an external meeting authorization service is configured. |
| meetingAccessHash | Valid access hash | empty | Carries the meeting password so the participant does not have to type it. This is what Veeting puts in the links it emails out. |
Note: These values are credentials. Generate them per participant and keep them out of shared links. See "Parameters the platform removes" below: the platform strips most of them from the URL for exactly that reason.
| Parameter | Possible values | Default | Description |
|---|---|---|---|
| skipJoinMeetingScreen | true, false | false | Skips the "Join Meeting" screen entirely. IMPORTANT: You must also supply participantName; otherwise the participant has no name. |
| skipDeviceTestOnJoin | true, false | false | Sets the default value of the "Device Test" option. The participant can still change it. |
| hideDeviceTestSection | true, false | false | Hides the "Device Test" section. Hiding the section does not change what the option would have done. |
| hideJoinModeSection | true, false | false | Hides the "Join Mode" section. Combine it with joinType to choose the mode for the participant. |
| hideConsentSection | true, false | false | Hides the consent checkbox. IMPORTANT: You remain responsible for obtaining consent by other means. |
| hideLegalAndComplianceSection | true, false | false | Hides the legal and compliance section, which contains the imprint and privacy links. |
| disableNameInput | true, false | false | Disables the participant name input field. |
| disableEmailInput | true, false | false | Disables the participant email input field. |
| disablePasswordInput | true, false | false | Disables the meeting password input field. |
| Parameter | Possible values | Default | Description |
|---|---|---|---|
| meetingRoomLayout | standard, video-only, collaboration-only | standard | Controls whether video, the collaboration tools, or both are shown. |
| joinType | audio-only, audio-video, video-only, no-media | audio-video | Pre-selects the join mode. Useful together with hideJoinModeSection. |
| mediaDirection | receiveonly, sendonly | empty | Restricts the direction media flows. Omit it to both send and receive, which is the default. Any other value is ignored. |
| cameraDirection | user, environment | empty | The default camera on mobile phones. user selects the front-facing camera, environment the rear one. |
| videoResolution | 1280x960, 1280x720, 960x720, 960x540, 640x480, 640x360, 320x240, 320x180 | account default | The outgoing video resolution. |
| disableIncomingVideo | true, false | false | Joins without receiving video from other participants. Useful on constrained connections. |
| hideCollaborationHeader | true, false | false | Hides the header above the collaboration area, giving an embedded room more usable height. |
| enableDarkMode | true, false | false | Renders the meeting room in dark mode. |
| Parameter | Possible values | Default | Description |
|---|---|---|---|
| videoInputDeviceId | string | empty | The camera device ID to use, if available. |
| audioInputDeviceId | string | empty | The microphone device ID to use, if available. |
| audioOutputDeviceId | string | empty | The speaker device ID to use, if available. |
| Parameter | Possible values | Default | Description |
|---|---|---|---|
| enableFollowMe | true, false | false | Enables the "Follow Me" feature. It works only if the participant is the organizer or a moderator. |
| leaveUrl | Any URL | empty | Overrides where the "Leave Meeting" button sends the participant. |
| Parameter | Possible values | Default | Description |
|---|---|---|---|
| localStoragePrefix | Any string | empty | Prefixes the keys Veeting writes to localStorage. Set it if you embed more than one Veeting application on the same origin, so that their stored state does not collide. |
| testWithoutRenderingMedia | true, false | false | For testing only: sends and receives streams without rendering audio and video. |
| enableDebugLogs | true, false | false | Turns on verbose logging in the browser console. Useful when we are helping you diagnose something. |
The platform takes two sets of parameters out of the URL. Neither is a bug, but both will surprise you if you expect to read a value back from window.location later.
Removed immediately, always. These never remain in the address bar:
meetingAccessToken
meetingAccessRequestToken
meetingChallengeCodeRemoved before the browser navigates. The platform reads these first and then clears them, so they do not end up in history, in a bookmark, or in a Referer header sent to a third party:
skipJoinMeetingScreen jwtToken moderatorToken
invisibleToken interpreterToken authenticationSkipToken
participantName participantUuid participantEmailIf you need a value after joining, keep it in your own application rather than reading it back from the URL.
participantName is the most common case.skipJoinMeetingScreen=true without participantName, which leaves the participant unnamed.moderatorToken or participantName to still be in the URL after the meeting room has loaded.1 or yes for a boolean. Only true and false are recognized.Contact our team to discuss the details.