Frameworks
React and Next.js
A component, plus verification in a route handler or server action.
npm install @botbar/react @botbar/server"use client";
import { Botbar } from "@botbar/react";
export function SignupForm() {
return (
<form action="/api/signup" method="post">
<input name="email" type="email" required />
<Botbar sitekey={process.env.NEXT_PUBLIC_BOTBAR_SITEKEY!} action="signup" />
<button>Sign up</button>
</form>
);
}Verify in a route handler or server action:
import { RESPONSE_FIELD, verify } from "@botbar/server";
export async function POST(request: Request) {
const form = await request.formData();
const result = await verify(form.get(RESPONSE_FIELD)?.toString(), {
secret: process.env.BOTBAR_SECRET!,
expectedHostname: "example.com",
expectedAction: "signup",
});
if (!result.success) return new Response("Verification failed", { status: 400 });
// ...create the account
}Props: sitekey, action, cdata, theme, size, language, responseFieldName, apiOrigin, onVerify, onExpire, onError. A ref gives you reset() and getResponse().