Embedding & viewer URLs
Embed an iGUIDE 3D virtual tour in your website or application using an iframe. This reference covers URL construction, query parameters for controlling the viewer and example configurations for common integration scenarios.
URL types
Every iGUIDE view has several URLs, each serving a different purpose:
| URL type | Pattern | Use case |
|---|---|---|
| Public | https://youriguide.com/{viewPath}/ | Full-featured viewer with agent branding |
| Unbranded | https://unbranded.youriguide.com/{viewPath}/ | Viewer without agent branding, video or map |
| Embed | https://youriguide.com/embed/{viewPath}/ | Optimized for iframe embedding |
| Manage | https://manage.youriguide.com/iguides/edit/{iguideId} | Portal editor (operators only) |
The {viewPath} is the view's alias (for default views) or the view ID (for non-default views). For example, in https://youriguide.com/api-docs-sample/, the view path is api-docs-sample.
The embed URL is the recommended choice for iframe integrations. It sets the embedded flag automatically, which adjusts the viewer layout for constrained viewports.
Detecting iGUIDE URLs
If you receive virtual tour URLs from an MLS feed and need to detect which ones are iGUIDEs, check the domain. iGUIDE views are served from several domains depending on the iGUIDE type:
| Domain | iGUIDE type |
|---|---|
youriguide.com / unbranded.youriguide.com | Standard and Premium |
iguidephotos.com / unbranded.iguidephotos.com | Photos-only |
iguideradix.com / unbranded.iguideradix.com | Radix |
Extract the view path (first path segment) using this regex:
const match = url.match(
/^https:\/\/(unbranded\.)?(youriguide|iguidephotos|iguideradix)\.com\/(?<viewPath>[^/?#]+)/
);
if (match) {
const viewPath = match.groups.viewPath;
const domain = match[2]; // "youriguide", "iguidephotos", or "iguideradix"
const embedUrl = `https://${domain}.com/embed/${viewPath}/`;
}
Embedding with an iframe
Basic embed
<iframe
src="https://youriguide.com/embed/api-docs-sample/"
width="100%"
height="600"
frameborder="0"
allowfullscreen
></iframe>
Responsive embed
To maintain a 16:9 aspect ratio that scales with the container:
<div style="position: relative; padding-bottom: 57%; height: 0; overflow: hidden;">
<iframe
src="https://youriguide.com/embed/api-docs-sample/"
style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"
frameborder="0"
allowfullscreen
></iframe>
</div>
The 57% padding-bottom produces a roughly 16:9 aspect ratio, which matches the default iGUIDE viewer proportions.
Query parameters
Append query parameters to the embed URL to control the viewer's behavior. Combine multiple parameters with &.
https://youriguide.com/embed/api-docs-sample/?autostart&nomenu&nocontrols
Startup behavior
| Parameter | Description |
|---|---|
autostart | Start the 3D tour automatically without waiting for user interaction. |
noinitanimation | Skip the opening camera animation. |
page | Set the starting tab. Values: tour (default), gallery, details, map, slideshow. Available tabs depend on the iGUIDE's content and package type. |
UI controls
| Parameter | Description |
|---|---|
nocontrols | Hide all on-screen navigation controls (arrows, zoom buttons). The tour is still navigable via mouse/touch. |
nomenu | Hide the top menu bar (tabs for tour, gallery, details, etc.). |
unbranded | Remove agent branding, external video and map. Equivalent to using the unbranded.youriguide.com domain. |
nogallery | Hide the gallery tab. |
nodetails | Hide the details tab. |
Camera position
| Parameter | Example | Description |
|---|---|---|
pano | pano=3 | Start at a specific panorama by ID. |
rotation | rotation=180 | Initial camera rotation in degrees (0–360). |
elevation | elevation=-15 | Initial camera elevation in degrees. Negative values look down. |
zoom | zoom=1.5 | Initial camera zoom level. |
Advanced
| Parameter | Description |
|---|---|
api | Enable the Viewer API for postMessage communication with the iframe. Required for programmatic control. |
nocache | Bypass cached assets. Useful during development or after a re-publish. |
Example URLs
Clean embed
Standard embed with auto-start—good for property listing pages:
https://youriguide.com/embed/api-docs-sample/?autostart&noinitanimation
MLS embed
Minimal, unbranded embed for MLS listing pages. Hides branding, menu and details since the listing page already shows property info:
https://unbranded.youriguide.com/embed/api-docs-sample/?autostart&noinitanimation&nomenu&nodetails
Kiosk mode
Full-screen, auto-starting tour with no UI chrome—suitable for lobby displays or trade show kiosks:
https://youriguide.com/embed/api-docs-sample/?autostart&noinitanimation&nocontrols&nomenu
Gallery start
Open directly to the photo gallery tab:
https://youriguide.com/embed/api-docs-sample/?page=gallery
Specific panorama
Start the tour at a specific panorama with a custom camera angle:
https://youriguide.com/embed/api-docs-sample/?pano=3&rotation=180&elevation=-10
Embed preview image
Each iGUIDE view has a preview image suitable for social sharing cards, thumbnails and link previews. The URL pattern is:
https://youriguide.com/{viewPath}/doc/embed_preview_{timestamp}.jpg?sync
The {timestamp} is the Unix timestamp of the view's last update. You can get the full preview image URL from the ready webhook event in the urls.mediaUrls object under the embedImage key.
The preview image is public—no access token required. Dimensions are 1200x684 pixels (roughly 16:9).
Embed builder tool
The iGUIDE Portal includes an interactive embed builder that lets you configure all parameters visually and generates the embed code for you:
https://manage.youriguide.com/embed/{viewPath}
For example: https://manage.youriguide.com/embed/api-docs-sample
The builder lets you toggle each option and preview the result in real time. Once you have the configuration you want, copy the generated embed code and swap the view path for other iGUIDEs.
The embed builder is the fastest way to experiment with query parameters and see their effect before writing integration code.
oEmbed
For platforms that support oEmbed (WordPress, Slack, etc.), iGUIDE provides an oEmbed endpoint:
https://youriguide.com/apiro/v1/oembed/?url={viewURL}&format=json
Example:
curl "https://youriguide.com/apiro/v1/oembed/?url=https://youriguide.com/api-docs-sample/&format=json&maxwidth=600"
Response:
{
"type": "rich",
"version": "1.0",
"provider_name": "iGUIDE",
"provider_url": "https://youriguide.com",
"html": "<iframe src=\"https://youriguide.com/embed/api-docs-sample/\" ...></iframe>",
"width": 600,
"height": 342
}
The oEmbed endpoint accepts optional maxwidth and maxheight parameters to constrain the output dimensions. The generated iframe always uses a 57% aspect ratio (height = width × 0.57) matching the viewer's default proportions.
Viewer API integration
For deeper control—responding to user navigation, programmatically moving the camera, or syncing state between the tour and your application—enable the Viewer API by adding the api query parameter:
<iframe
id="iguide"
src="https://youriguide.com/embed/api-docs-sample/?api"
width="100%"
height="600"
frameborder="0"
allowfullscreen
></iframe>
<script>
const iframe = document.getElementById("iguide");
iframe.addEventListener("load", () => {
// Listen for events from the viewer
window.addEventListener("message", (event) => {
if (event.source !== iframe.contentWindow) return;
console.log("Viewer event:", event.data);
});
});
</script>
See the Viewer API documentation for the full list of actions and events.
Related resources
- Viewer API
- View access & expiration
- RESO-compliant API — Autofill endpoint
- Listen for webhooks — Get embed URLs from the
readyevent - Download deliverables — Download media files referenced in embed URLs