rtrvr.ai logo
Roverby rtrvr.ai
Docs
Blog
Workspace
rtrvr.ai
Book Demo
Get Started

Getting Started

OverviewQuick Start

Integration

ConfigurationSecurity & Policies

Reference

API ReferenceExamples

Examples

Common integration patterns for different use cases.

Rover v2 task boundaries are strict: normal sends always start a fresh task boundary. Only ask_user answers continue the current boundary.

Basic Setup

Minimal latency-first ACT setup to get Rover running quickly.

<script>
  (function(){ var r = window.rover = window.rover || function(){ (r.q = r.q || []).push(arguments); }; r.l = +new Date(); })();
  rover('boot', {
    siteId: 'my-site',
    publicKey: 'pk_site_your_public_key',
    allowedDomains: ['example.com'],
    navigation: { crossHostPolicy: 'same_tab' },
    taskRouting: { mode: 'act' }, // Force ACT routing (no planner routing heuristics)
  });
</script>
<script src="https://rover.rtrvr.ai/embed.js?v=your_site_key_id" async></script>

Journeys + Async Identify

Blend workspace journeys with runtime overrides and personalize greeting after login.

<script>
  (function(){ var r = window.rover = window.rover || function(){ (r.q = r.q || []).push(arguments); }; r.l = +new Date(); })();
  rover('boot', {
    siteId: 'my-app',
    publicKey: 'pk_site_your_public_key',
    siteKeyId: 'your-site-key-id',
    allowedDomains: ['app.example.com'],
    navigation: { crossHostPolicy: 'same_tab' },
    // Workspace journeys are fetched by default via /v2/rover/session/open.
    // Optional override in boot config:
    ui: {
      shortcuts: [
        { id: 'onboard', label: 'Onboard me', prompt: 'Guide me through onboarding', routing: 'planner', enabled: true }
      ],
      greeting: { text: 'Hey {name}! Need setup help?', delay: 2000, duration: 8000 }
    },
  });

  // Later, when auth completes:
  rover('identify', { name: 'Alex', email: 'alex@example.com' });
</script>
<script src="https://rover.rtrvr.ai/embed.js?v=your_site_key_id" async></script>

Onboarding Flow

Auto-routing setup with planner fallback only when ACT has no usable outcome.

<script>
  (function(){ var r = window.rover = window.rover || function(){ (r.q = r.q || []).push(arguments); }; r.l = +new Date(); })();
  const isNewUser = !localStorage.getItem('onboarded');

  rover('boot', {
    siteId: 'my-app',
    publicKey: 'pk_site_your_public_key',
    allowedDomains: ['app.example.com'],
    navigation: { crossHostPolicy: 'same_tab' },
    openOnInit: isNewUser,
    taskRouting: {
      mode: 'auto',
      plannerOnActError: true, // Planner fallback runs only if ACT has no usable result
      actHeuristicThreshold: 5
    },
    checkpointing: { enabled: true, autoVisitorId: true },
  });
</script>
<script src="https://rover.rtrvr.ai/embed.js?v=your_site_key_id" async></script>

Checkout Assistant

Help users complete checkout by filling addresses, applying promos, and handling payment flows.

<script>
  (function(){ var r = window.rover = window.rover || function(){ (r.q = r.q || []).push(arguments); }; r.l = +new Date(); })();
  rover('boot', {
    siteId: 'my-store',
    publicKey: 'pk_site_your_public_key',
    allowedDomains: ['shop.example.com', 'checkout.example.com'],
    domainScopeMode: 'registrable_domain',
    navigation: { crossHostPolicy: 'same_tab' },
    externalNavigationPolicy: 'block',
    allowActions: true,
    taskRouting: { mode: 'auto', plannerOnActError: true },
  });
</script>
<script src="https://rover.rtrvr.ai/embed.js?v=your_site_key_id" async></script>

Form Assistance

Guide users through complex multi-step forms with validation and auto-fill.

<script>
  (function(){ var r = window.rover = window.rover || function(){ (r.q = r.q || []).push(arguments); }; r.l = +new Date(); })();
  rover('boot', {
    siteId: 'my-portal',
    publicKey: 'pk_site_your_public_key',
    allowedDomains: ['portal.example.com'],
    navigation: { crossHostPolicy: 'same_tab' },
    sessionScope: 'tab',
    taskRouting: { mode: 'planner' },
    checkpointing: { enabled: true, autoVisitorId: true },
  });
</script>
<script src="https://rover.rtrvr.ai/embed.js?v=your_site_key_id" async></script>

Read-Only Support Agent

Rover helps users find information and navigate, but doesn't take actions.

<script>
  (function(){ var r = window.rover = window.rover || function(){ (r.q = r.q || []).push(arguments); }; r.l = +new Date(); })();
  rover('boot', {
    siteId: 'my-help',
    publicKey: 'pk_site_your_public_key',
    allowedDomains: ['help.example.com'],
    navigation: { crossHostPolicy: 'same_tab' },
    allowActions: false,
    externalNavigationPolicy: 'open_new_tab_notice',
  });
</script>
<script src="https://rover.rtrvr.ai/embed.js?v=your_site_key_id" async></script>

Strict Security Mode

Maximum lockdown: host-only match, no external navigation, strict scoping.

<script>
  (function(){ var r = window.rover = window.rover || function(){ (r.q = r.q || []).push(arguments); }; r.l = +new Date(); })();
  rover('boot', {
    siteId: 'secure-app',
    publicKey: 'pk_site_your_public_key',
    allowedDomains: ['app.example.com'],
    domainScopeMode: 'host_only',
    navigation: { crossHostPolicy: 'same_tab' },
    externalNavigationPolicy: 'block',
    sessionScope: 'tab',
  });
</script>
<script src="https://rover.rtrvr.ai/embed.js?v=your_site_key_id" async></script>

Need a pattern not listed here? Check the Configuration Reference for all available options, or reach out on Discord.

Quick StartAPI Reference
rtrvr.ai logo
Rover

The first DOM-native embedded web agent. Clicks, fills, navigates, and onboards — through conversation.

Product

  • Overview
  • Workspace
  • Pricing

Developers

  • Quick Start
  • Configuration
  • API Reference
  • Security
  • Examples

Resources

  • Blog
  • rtrvr.ai Docs
  • rtrvr.ai Cloud

© 2026 rtrvr.ai. All rights reserved.

PrivacyTerms