Embeddable forms + scheduling

Add a contact form and a meeting scheduler to any site — in one line.

Repizen is a drop-in widget for contact forms and calendar booking. Mail routes to the right inbox, meetings send real calendar invites, and abuse stays out — with no inbox to wire up and no backend to build.

One snippet · inline, floating, or iframe · your domain, your data

index.html
<div data-emailer-widget="floating"
     data-form-id="contact"></div>

<script src="https://app.repizen.com/loader.js"></script>
Built on infrastructure you already trust
  • Azure Communication Services
  • Kubernetes
  • Keycloak SSO
  • SPF · DKIM · DMARC
  • Managed Identity — no secrets
What you get

Two widgets. One snippet. Nothing to maintain.

Everything visitors need to reach you or book time with you — without standing up a server, a database, or an SMTP relay.

Contact forms

Collect a message and route it to the right inbox. The recipient is resolved server-side — the browser never sees an address, so your form can't be turned into an open relay.

Meeting scheduling

Publish your availability, let visitors pick a slot, and both sides get a proper .ics calendar invite they can accept in Outlook, Google, or Apple Calendar.

One snippet, three modes

Mount it inline, as a floating launcher, or a raw iframe. Switch between a form and a scheduler by changing a single data- attribute.

Your domain, your reputation

Send from noreply@yourdomain with verified SPF and DKIM. Your deliverability rides on your domain — not a noisy shared pool.

Secure by default

Origin allowlists, CSP frame-ancestors, honeypots, render-delay traps, per-IP rate limits and body caps — on by default, not a paid add-on.

No secrets, no servers

The service runs on managed identity end to end. There are no API keys in your pages and no infrastructure on your side to patch or leak.

How it works

Paste one snippet. You're live.

Pick the mount style that fits the page. Switching between the contact form and the scheduler is just data-form-id vs data-schedule-id.

<!-- Drops the form right into the page -->
<div data-emailer-widget="inline" data-form-id="contact"></div>

<script src="https://app.repizen.com/loader.js"></script>
1

Add the snippet to any page — your CMS, your SPA, a landing page, anywhere.

2

Visitors submit or book. We validate, store, and send — server-side.

3

Mail and calendar invites arrive from your own verified domain.

Security

Security isn't a tier. It's the default.

Anonymous endpoints, locked down on the server. Every control below ships on, for every plan.

Server-side recipient mapping

The client sends an ID, never an address. You can't be weaponised into a mail relay.

Origin & frame-ancestors

A per-tenant allowlist controls who can call the API and who can embed the widget.

Bot traps

Hidden honeypot fields and a render-delay check drop automated submissions silently.

Rate limits & body caps

Per-IP throttling and a hard request-size limit blunt floods and abuse.

Double-booking-proof

Slots reserve atomically — two people racing for the same time, only one wins.

Managed identity

No connection strings, no keys in code. Tokens are issued on demand and scoped.

Escaped output

Every user-supplied value is HTML-escaped before it lands in an email.

DKIM-signed sending

Mail is signed on your verified domain so it authenticates and lands in inboxes.

Your data

Your data, where you want it.

Launch hosted in minutes. Move into your own cloud when compliance calls for it — same widget, same API.

We host it. You point a DNS record at us.

Every customer runs in an isolated stamp on our hardened infrastructure. You add one CNAME, verify your sender domain, and you're live. Nothing for you to run, patch, or scale.

  • Fastest path to launch — minutes, not migrations
  • Per-customer isolation, not a shared multi-tenant pool
  • Region choice for data residency
  • We operate, monitor, and back it up
Any cloud, any DNS

Goes live with a DNS record.

Your site can run anywhere — Azure, AWS, GCP, on-prem. We integrate at the layer above the cloud: DNS. We never ask for credentials to your cloud account.

  1. Point a CNAMEforms.yourdomain.com → us. Serve the widget on your own domain.
  2. Verify sending — add SPF + DKIM so mail leaves from your domain, signed and authenticated.
  3. Drop the snippet — and you're done.

Works with Route 53, Cloud DNS, Azure DNS, Cloudflare — or whatever you already use.

RecordTypeDoes
Domain verificationTXTProves you own the domain
SPFTXTAuthorises sending
DKIMCNAMESigns outbound mail
DMARCTXTPolicy & reporting
Custom domainCNAMEServes the widget on your domain
AI agents · Model Context Protocol

Your agent builds the site. We hand it the form.

Repizen is MCP-native: our official MCP server exposes the admin control plane as 5 tools any MCP host discovers and calls directly. One call provisions the tenant, declares the fields, mints a publishable key, and returns a paste-ready snippet.

01
repizen_provision_contact_form tenant + form embed + live key → paste-ready snippet, end to end
02
repizen_get_form_fields · repizen_set_form_fields read and reshape a form's custom fields — the server validates every config
03
repizen_list_tenants · repizen_describe_tenant inspect tenants, embeds, and field counts across the control plane
  • Same admin API, validation, and audit trail as the dashboard
  • One source of truth for the field grammar — an agent can't ship an invalid form
  • Publishable keys are scoped per embed and shown exactly once
mcp.json
{
  "mcpServers": {
    "repizen": {
      "command": "node",
      "args": ["repizen-mcp/src/index.js"],
      "env": {
        "REPIZEN_ADMIN_BASE": "https://widget.repizen.com/admin/api",
        "REPIZEN_ADMIN_KEY": "sk_live_…"
      }
    }
  }
}
  • Claude Desktop
  • Claude Code
  • Cline
  • Continue.dev
  • Any MCP host
Pricing

Start free. Scale when you do.

Free to embed on one site. Growth when volume and custom sending matter. Enterprise when data must stay in your cloud.

Starter

$0/mo

Everything to ship one site.

  • 1 domain · both widgets
  • Hosted in our tenant
  • Shared sending domain
  • Community support
Start free

Enterprise

Custom

Your cloud, your rules.

  • Data plane in your Azure / AWS / GCP
  • Keycloak SSO & SCIM
  • DPA, SLA & security review
  • Dedicated support
Talk to us
FAQ

The technical questions, answered.

Where does my data live?

By default, in an isolated stamp inside our tenant, with a region of your choice. On Enterprise, we deploy the data plane into your own cloud account so data never leaves your tenancy.

Do I need a backend or a database?

No. The widget talks to our managed API. There's nothing for you to host, and no API keys live in your pages.

What clouds do you support for embedding?

All of them. The widget is a script tag or an iframe — your site can run on Azure, AWS, GCP, or your own servers. We integrate via DNS, not via your cloud account.

How do meeting invites work?

We send a standard .ics invite to both the visitor and the host. It opens and accepts cleanly in Outlook, Google Calendar, and Apple Calendar.

How do you keep spam out?

Server-side validation, per-IP rate limits, honeypot and render-delay bot traps, and body-size caps — all on by default. Stronger challenge-based protection is available for public-facing forms.

Is it built for GDPR?

Yes — region residency, configurable retention, data-deletion on request, and a DPA on business plans. Enterprise keeps data entirely within your own cloud.

Ship it this afternoon.

Add a form and a scheduler to your site in one line — and never wire up an inbox again.

No credit card required for Starter. Upgrade anytime from the console.