Install guide

Install the Replede widget

The Replede widget is one script tag. It loads asynchronously, renders inside its own Shadow DOM so your site's CSS stays untouched, runs the conversational AI intake when available, and degrades to a plain form when it is not. This page is everything you need to put it on your site.

The embed snippet

Paste this where you want the widget to appear, replacing YOUR_TENANT_ID with the tenant ID from your onboarding email:

<div data-replede-widget></div>
<script src="https://replede.com/assets/replede-widget.js"
        data-tenant-id="YOUR_TENANT_ID" async></script>

That is the whole install. The script is a single static file served from our CDN — no build step, no dependencies, no iframe. The async attribute keeps it from ever blocking your page; the widget waits for the DOM and mounts itself into the data-replede-widget element.

For visitors with JavaScript disabled, add a plain-HTML escape hatch next to the mount so no one hits a dead end:

<noscript>
  <p>Our intake form needs JavaScript.
  Email <a href="mailto:sales@yourcompany.com">sales@yourcompany.com</a> instead.</p>
</noscript>

Data-attribute reference

All configuration lives on the script tag:

AttributeRequiredDefaultWhat it does
data-tenant-id Yes demo Your workspace ID. Scopes branding, consent text, required fields, and the CRM destination to your account. Without it, submissions land in the shared demo workspace.
data-api-base No The production Replede API Overrides the API origin. You only need this if Replede support asks you to point at a different environment.
data-mount No [data-replede-widget] A CSS selector for the element the widget should render into, if you prefer your own container instead of the default div.

How the two modes behave

Conversational mode is the default. The widget opens with one focused question, starts a session on the visitor's first interaction (never on page load), and asks short follow-ups one at a time — problem, business email, role, intent, timeline, budget. Captured answers appear as confirmed chips, budget and timeline offer one-tap choices, and your consent text is shown before anything is sent. When the required fields are gathered, or the visitor clicks "Send to sales", the profile is submitted and the conversation completes.

Static fallback mode takes over automatically whenever the conversation cannot run: the session API is unreachable, AI is not enabled for your workspace, or a request errors mid-conversation. The visitor sees the classic eight-field form instead — pre-filled with anything they already said — and submits the same buyer profile. No configuration needed; it is the same script.

No lead left behind. If a visitor answers a few questions and then closes the tab, the widget flushes a best-effort submission with what was gathered (whenever a usable business email was captured), so a half-finished conversation still becomes a lead instead of nothing.

Allowed origins

The Replede API only accepts widget traffic from origins registered to your workspace. Configure your site's origin (for example https://www.yourcompany.com) with us during onboarding — and tell us about staging domains too, so you can test before going live. Requests from unregistered origins are refused.

Content-Security-Policy guidance

If your site sets a CSP, allow the widget script and its API calls:

script-src  https://replede.com;
connect-src https://huqxykw8p2.execute-api.us-east-1.amazonaws.com;

Append these sources to your existing directives rather than replacing them. The widget injects its styles inside its own Shadow DOM, so no style-src change is needed, and it loads no images, fonts, or frames from our domain.

Troubleshooting

  • Widget not appearing. Check that the <div data-replede-widget> mount element exists on the page, that the script URL returns 200 in your browser's network tab, and that your CSP allows script-src https://replede.com. If you used data-mount, confirm the selector matches exactly one element.
  • Requests rejected with 403. Your page's origin is not on your workspace's allowed-origins list. Email hello@replede.com with the exact origin (scheme + host + port) and we will add it.
  • Responses with 429. Your traffic hit a rate limit. The widget handles this on its own — it shows the visitor a polite "one moment" notice and retries after the server's suggested backoff. If you see sustained 429s on normal traffic, contact us to raise your limit.
  • Conversation never starts, form shows instead. That is the designed fallback. It usually means AI is not yet enabled for your workspace or the session API was briefly unreachable; submissions still work either way.

See it live

Try the exact widget you'd be installing.

The demo page runs this same script against our demo workspace.

Get a demo