360 SDK — Embedding Results

Search → StreamResult → mounted experience.

Embedding Results

The typical embed flow: run a Stream search, pick a result with interactive: true, and hand its video_url to the player. The SDK handles flat vs 360 rendering automatically.

JavaScript
const stream = await fetch("https://api.outerview.ai/v1/stream", {
  method: "POST",
  headers: { "Content-Type": "application/json", Authorization: `Bearer ${key}` },
  body: JSON.stringify({ query: "potholes", region_id: "4915" }),
}).then((r) => r.json());

const interactive = stream.data.geojson.features.find((feature) => feature.properties.interactive);
if (interactive) {
  create360Player({
    container: "#viewer",
    videoUrl: interactive.properties.video_url,
    autoplay: true,
    muted: true,
  });
} else {
  // Flat fallback: show thumbnail or play video_url inline
}

Deep links

Prefer not to host the player yourself? Every search has a ready-made Outerview experience at /search/<result_id> — link users straight into the full product experience (map, answer and 360 results).